首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android – Drawable 详解

用法 在不同情况下有很多绘制的类型,设置按钮的状态行为,创建伸缩的按钮背景和创建复合绘制图层。...这用于创建一个复杂的形状,然后可以作为布局或视图的背景附加在屏幕上。例如,可以使用绘制形状来更改按钮背景形状,边框和渐变。 一个形状只是一个属性的集合,被合并来描述一个背景。...形状可以用属性来描述,如圆角,背景渐变,间距填充,背景颜色固定,描边等。 纯色 Shapes 下面是一个绘制带有边框的圆角矩形的示例: <?...图层样式的常见用例包括: ① View边框阴影 ② View单边添加边框 ③ View分层背景 ④ View卡片背景绘制三角形 举一个简单的例子,下面的图层列表绘制了几个相互关联的形状:...运行时Drawables 我们可以通过访问具有绘制应用的视图的背景,在我们的Java代码的运行时访问drawable。

5.2K50
您找到你想要的搜索结果了吗?
是的
没有找到

Android入门教程 | res资源目录简介与shape的绘制和使用

drawable/:位图文件(.png、.9.png、.jpg、.gif)或编译为以下绘制对象资源子类型的 XML 文件: 位图文件、九宫格(可调整大小的位图)、状态列表、形状、动画绘制对象、其他绘制对象...mipmap/:适用于不同启动器图标密度的绘制对象文件。应用图标放这里。 mipmap后面跟着的dpi类别,比如hdpi mdpi,里面的图标尺寸大小是不同的。...values/:包含字符串、整型数和颜色等简单值的 XML 文件。其他 res/ 子目录中的 XML 资源文件会根据 XML 文件名定义单个资源,而 values/ 目录中的文件描述多个资源。...比如位图文件(.png、.9.png、.jpg、.gif);或一些绘制对象资源子类型的 XML 文件(本文称为drawable文件)。...[1240] shape介绍 shape又称为“形状绘制对象”。为了简便,以下都称作shape或者“shape文件”。 shape是一种在 XML 文件中定义的通用形状

1.3K20

Android 8.0 自适应图标

原来 Android 8.0(API 级别 26)引入了自适应启动器图标,可以在不同设备模型中显示各种形状。下面看下官方酷炫动态图: ? ? 图1. 自适应图标支持各种设备之间不同的掩码。...可以通过定义 2 层来控制自适应启动器图标的外观,包括背景和前景。您必须提供图标图层作为绘图,图标轮廓周围不能有蒙版或背景阴影。 ? 图2. 自适应图标使用 2 个图层和 1 个蒙版进行定义。...用 XML 创建自适应图标 我们首先创建一个 Sample 项目,如图: ? 比以往多一个 res/mipmap-anydpi-v26 文件,打开,有背景和前景。...ic_launcher_background.xml 然后清单使用android:icon 属性以指定绘制资源,还可以使用该android:roundIcon 属性定义图标绘制资源。

2.6K100

Android中的各种Drawable类详解

视图View的背景就是一个Drawable对象,在视图需要进行绘制而调用draw函数时,内部的一部分实现会将调用委托给背景属性mBackground这个Drawable对象的draw函数来完成背景绘制...RotateDrawable 旋转绘制类 这个绘制类不支持代码建立,只支持XML文件构造。可以指定开始角度,结束角度,旋转的中心点。...下面是一个XML来设置旋转绘制类的方法: <?xml version="1.0" encoding="utf-8"?...="50%" > ShapeDrawable 形状绘制类。...一般用这个类来设置圆角按钮背景。 LayerDrawable 图层绘制类。 用于重叠多个绘制对象。这是一个容器绘制类,里面可以添加多个子绘制对象,每个子绘制对象就是其中的一层。

1.5K20

常用控件之Button详解

三、按钮样式设置 每个按钮都使用系统的默认按钮背景进行样式化,如果您对默认按钮样式不满意,并且希望对其进行自定义以匹配应用程序的设计,那么您可以用绘制的状态列表替换按钮的背景图像。...状态列表绘制是在XML中定义的绘制资源,它根据按钮的当前状态更改其图像。一旦定义了一个可以用XML绘制的状态列表,就可以将它应用到具有 android:background属性的按钮上。...1.设置背景图 方法一:在xml布局里直接设置背景图 ?...(this, R.mipmap.ic_launcher)); btnClickMe.setBackgroundResource(R.mipmap.ic_launcher); 2.设置背景色 方法一:在xml...:shape="rectangle" //样式为矩形(四个属性: rectangle矩形、 oval椭圆形、 line线性形状、 ring环形) solid:指定内部填充色 corners:定义圆角 (

1.4K10

Android 性能优化】布局渲染优化 ( 过渡绘制 | 自定义控件过渡绘制 | 布局文件层次深 | GPU 过渡绘制调试工具 | 背景过度绘制 )

过渡渲染示例 这是 Android 的设置界面 , 大部分是蓝色 , 或浅绿 , 浅红色只占很小的部分 ; 四、 背景过度绘制 ---- 1 ....背景设置 : ① 设置背景 : 设置了背景 , 图片或颜色值 , 绘制增加 1 次 ; ② 透明背景 : 背景透明 , 不增加绘制次数 , 绘制增加 0 次 ; ③ 主题背景 : 在主题中设置了背景..., 也会增加 1 次绘制 ; 如果同时设置布局的背景和主题背景 , 此时会绘制 2 次 ; 删除一次背景设置 , 这里建议删除主题的背景 ; 2 .... 在 AndroidManifest.xml 的 Activity 标签中设置该主题 , 即可取消该背景 ; <?...xml version="1.0" encoding="utf-8"?

2K20

《移动互联网技术》第六章 资源管理: 掌握定制控件样式、界面主题、绘制资源程序的编写方法

第六章 资源管理 本章小结: 1、本单元学习目的 通过了解应用程序常用的各种资源,掌握资源的访问方法,以及两种设置界面外观的方式:样式(Style)和主题(Theme);对于绘制资源,重点掌握三种Drawable...2、本单元学习要求 (1) 掌握各种资源的基本访问用法; (2) 掌握定制控件样式、界面主题、绘制资源程序的编写方法; (3) 掌握原生资源打包方法。...难点 (1) 绘制资源 Drawable代表了一大类资源。比如:图形、位图图像就是绘制的资源。...下面主要介绍三种形状绘制资源:state list drawable、 shape drawable和layer list drawable。...绘制资源的使用。 使用assets打包资源的方式。 2、本单元课后习题 1、如何打开res/raw目录中的数据库文件?

6910

Android 性能优化】布局渲染优化 ( 过渡绘制 | 背景设置产生的过度绘制 | Android 系统的渲染优化 | 自定义布局渲染优化 )

文章目录 一、 背景设置产生的过度绘制 二、 Android 系统的渲染优化 1. 透明组件数据传递 2. GPU 存储机制 3....Android 7.0 之后的优化机制 三、 自定义布局渲染优化 一、 背景设置产生的过度绘制 ---- 1....背景设置产生的过度绘制 : ① 组件背景 : 每个组件每设置一次背景 , 该组件的区域就会增加一层绘制 , 如 LinearLayout 线性布局设置背景颜色 , TextView 设置背景颜色 , 都会增加该组件区域内的过渡绘制...; ② 布局背景 : 布局文件总的背景 , 会增加一次 GPU 绘制 ; ③ 主题背景 : Activity 界面的主题背景 , 会增加一次 GPU 绘制 ; 2...., 设置一张图片 , 会增加一次绘制 , 如果再给该 ImageView 组件设置背景颜色 , 那么又会增加一次绘制 , 那么该 ImageView 组件肯定过渡绘制了 ; 二、 Android 系统的渲染优化

4.5K30

Android5.0中多种水波纹效果的实现代码

/ 只需要给TextView设置背景即可,背景内容就为系统自带的selecttableItemBackground。这种是有界水波纹,就是水波纹会在TextView所在区域进行绘制。.../ 所谓的无界并非完全无界,而是以控件宽高中最大的数值作为水波纹效果所在正方形的边界进行绘制。OK,这两种都是系统自带的水波纹效果,如果我们想要自定义又该怎么做呢?...</ripple 在布局文件中将之引用为控件的背景: <TextView android:layout_width="match_parent" android:layout_height...带图片形状的水波纹 有的时候如果你希望水波纹不是长条形,又该如何呢?有两种解决方案,一种是使用图片,还有就是自定义shape,我们先来看看使用图片: <?...自绘形状的水波纹 自绘shape,来看一个圆角矩形: <?xml version="1.0" encoding="utf-8"?

1.4K20

Android-Xml绘图

Android XML绘图 XMlAndroid中可不仅仅是一个布局文件、配置列表。它甚至可以变成一张画、一张图。...line: 线形,可以画实线和虚线 ring: 环形,可以画环形进度条 通过shape可以在XML绘制任何形状,下面展示了Shape所支持的参数 "http://schemas.android.com...右上角的半径 android:bottomLeftRadius 左下角的半径 android:bottomRightRadius 右下角的半径 stroke: 设置描边,描成实线或虚线。...---- Tab背景的代码: 第一种实现方式: bg_tab_selector.xml <selector xmlns:android="http://schemas.android.com/apk...举个例子,一个按钮的背景,默认时是一个形状,按下时是一个形状,不可操作时又是另一个形状。有时候,不同状态下改变的不只是背景、图片等,文字颜色也会相应改变。

73410

Android应用图标微技巧,8.0系统中应用图标的适配

也就是说,我们在设计应用图标的时候,需要将前景和背景部分分离,前景用来展示应用图标的Logo,背景用来衬托应用图标的Logo。需要注意的是,背景层在设计的时候只允许定义颜色和纹理,但是不能定义形状。...不过考虑到它们都是只在国内市场提供服务,因此也情有原。...接下来打开AndroidManifest.xml文件,代码如下所示: <manifest xmlns:android="http://schemas.android.com/apk/res/android...xml version="1.0" encoding="utf-8"?...那么我们分别来看一下背景层和前景层分别都是些什么内容吧,首先打开ic_launcher_background文件,内容如下图所示: ? 这是一个使用SVG格式绘制出来的带纹理的底图。

1.7K20
领券