Android shape 图形

2024-09-07 05:18
文章标签 android 图形 shape

本文主要是介绍Android shape 图形,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <!-- "oval","rectangle", "line","ring" 形状--><!-- 圆角 --><cornersandroid:radius="8dp"android:topLeftRadius="5dp"android:topRightRadius="5dp"android:bottomLeftRadius="15dp"android:bottomRightRadius="15dp"/><!-- 设置各个角的圆角 --><!-- 渐变 --><gradientandroid:startColor="@android:color/red"android:centerColor="@android:color/green"android:endColor="@android:color/white"android:useLevel="true"android:angle="45"android:type="radial"android:centerX="0"android:centerY="0"android:gradientRadius="90"/><!-- 间隔 --><paddingandroid:left="2dp"android:top="2dp"android:right="2dp"android:bottom="2dp"/><!-- 各方向的间隔 --><!-- 大小 --><sizeandroid:width="50dp"android:height="50dp"/><!-- 宽度和高度 --><!-- 填充 --><solidandroid:color="@android:color/white"/><!-- 填充的颜色 --><!-- 描边 --><strokeandroid:width="2dp"android:color="@android:color/black"android:dashWidth="1dp"android:dashGap="2dp"/> <!-- 设置边框虚线 --></shape>



shape用于设定形状,可以在selector,layout等里面使用,有6个子标签
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="oval"> <!-- "oval","rectangle", "line","ring" 形状-->
    android:shape="oval" 指定绘制图形的形装
"oval":椭圆 当高宽相等时也就是圆形
"rectangle",:长方形
"line",:线形
"ring":环形


填充:设置填充的颜色


间隔:设置四个方向上的间隔


大小:设置高宽大小


圆角:同时设置五个属性,则Radius属性无效
android:Radius="10dp"              设置四个角的半径
android:topLeftRadius="10dp"       设置左上角的半径 
android:topRightRadius="10dp"      设置右上角的半径 
android:bottomLeftRadius="10dp"    设置右下角的半径 
android:bottomRightRadius="10dp"   设置左下角的半径


描边:dashWidth和dashGap属性,只要其中一个设置为0dp,则边框为实现边框
android:width="20dp"               设置边边的宽度 
android:color="@android:color/black"   设置边边的颜色 
android:dashWidth="2dp"                 设置虚线的宽度 
android:dashGap="20dp"                  设置虚线的间隔宽度


渐变:当设置填充颜色后,无渐变效果。
angle的值必须是45的倍数(包括0),仅在type="linear"有效,不然会报错。
android:startColor="@android:color/red" 渐变开始颜色
android:centerColor="@android:color/green" 渐变中间颜色
android:endColor="@android:color/white" 渐变结束颜色
android:useLevel="true"
android:angle="45" 渐变色的角度,必须为0或45的整数倍  0,45,90,135,180,225,270,315等可取值。
android:type="radial" 渐变类型“sweep”,“radial”,"linear"
android:centerX="0" 渐变X轴中心可以是0 或 百分比,如:50%
android:centerY="0" 渐变Y轴中心可以是0 或 百分比,如:50%
android:gradientRadius="90" 渐变的半径type="radial"时使用










这篇关于Android shape 图形的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1144156

相关文章

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键