Drawable的使用

简介: 一:BitmapDrawable二:ShapeDrawable三:StteListDrawable四:LevelListDrawable五:ScaleDrawable六:ClipDrawable


一:BitmapDrawable


<?xml version="1.0" encoding="utf-8"?>
<!--antialias:抗锯齿-->
<!--dither:抖动-->
<!--src:图片的地址-->
<!--tileMode:平铺模式;
可选值:
disable:关闭平铺模式
repeat:水平和垂直方向平铺
mirror:水平和垂直方向平铺的基础上加上倒影
clamp:四周扩散到周围区域-->
<bitmap
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/wifi"
    android:antialias="true"
    android:dither="true"
    android:gravity="center"
    android:tileMode="repeat"
    > 
</bitmap>

效果图:

image.png


二:ShapeDrawable



ShapeDrawable可以渐变也可以纯色填充

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
       android:shape="rectangle"><!--选择形状-->
       <!--angle:渐变角度,必须为45的倍数-->
       <!--type:渐变类别,可选值:linear:线性渐变;radial:径向渐变;sweep:扫描线渐变-->
    <gradient
        android:angle="45"  
        android:centerX="100"
        android:centerY="100"
        android:startColor="#ff0000"
        android:centerColor="#ffff00"
        android:endColor="#66ffff"
        android:type="linear"/>
    <stroke
        android:width="5dp"
        android:color="#000000"
        android:dashWidth="2dp"
        android:dashGap="3dp"/>
</shape>


效果图:

image.png


三:StteListDrawable


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
          android:constantSize="false"
          android:dither="true"
          android:variablePadding="false">
    <!--按下时的状态-->
    <item
        android:state_pressed="true"
        android:drawable="@drawable/zreo"/>
    <!--获取焦点时的状态-->
    <item
        android:state_focused="true"
        android:drawable="@drawable/one"/>
    <!--普通时刻状态-->
    <item
        android:drawable="@drawable/two"/>
</selector>


四:LevelListDrawable



根据不同的等级切换到不同的Drawable

等级范围:0~10000

<?xml version="1.0" encoding="utf-8"?>
<level-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:drawable="@drawable/zero"
        android:maxLevel="0"/>
    <item
        android:drawable="@drawable/one"
        android:maxLevel="1"/>
    <item
        android:drawable="@drawable/two"
        android:maxLevel="2"/>
</level-list>


五:ScaleDrawable



根据等级缩放Drawable

<scale xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/no"
    android:scaleGravity="center"
    android:scaleWidth="60%"
    android:scaleHeight="60%">
</scale>
View scale = findViewById(R.id.test);
        ScaleDrawable scaleDrawable = (ScaleDrawable) scale.getBackground();
        scaleDrawable.setLevel(5000);


六:ClipDrawable



根据等级裁剪Drawable

<!--clipOrientation:裁剪方向-->
<clip xmlns:android="http://schemas.android.com/apk/res/android"
      android:drawable="@drawable/not"
      android:clipOrientation="vertical"
      android:gravity="center">
</clip>
 ImageView scale = (ImageView) findViewById(R.id.test);
        ClipDrawable clipDrawable = (ClipDrawable) scale.getDrawable();
        clipDrawable.setLevel(5000);

原图

image.png

裁剪之后的图

image.png

相关文章
|
云安全 安全 Java
那些曾经遇到过的logger
那些曾经遇到过的logger
387 0
|
5天前
|
人工智能 安全 测试技术
|
7天前
|
云安全 人工智能 安全
阿里云 Agentic SOC 位居 IDC MarketScape安全运营智能体2026领导者类别
以 Agentic AI 重构安全运营闭环,阿里云云安全在产品能力与市场份额
1199 3
|
8天前
|
缓存 UED 开发者
Codex109天重置23次,明天还要再送一次
Codex近109天完成23次额度重置,7月14日将迎来第24次。Tibo高频响应用户反馈:优化GPT-5.6高消耗问题、补发失效福利、调整重置时间——形成“反馈→回应→修复→补偿”正向闭环,彰显以用户为中心的产品哲学。(239字)
762 12
|
1天前
|
人工智能 运维 数据挖掘
最新版通义千问(Qwen3.8-Max-Preview)功能介绍
2026年7月,阿里云通义千问正式对外开放**Qwen3.8-Max-Preview旗舰预览模型**,作为目前千问系列规格最高、综合性能最强的新一代万亿级AI模型,该模型搭载2.4T超大参数架构,是阿里云首款突破万亿参数的原生多模态旗舰模型,全面覆盖文本、图像、视频、文档多维度处理能力。相较于前代热门Qwen3.7-Max版本,本次预览版实现全方位跨越式升级,在真实工程开发、多智能体长周期任务、全链路办公自动化、海量数据分析等高阶场景中,综合能力已达到全球顶尖模型水准。现阶段该模型已正式开放抢先体验通道,依托阿里云百炼Token Plan、Qoder编码平台、QoderWork办公终端三大专属
1448 0
|
7天前
|
数据采集 机器学习/深度学习 人工智能
田间杂草定位与检测4200张YOLO智慧农业数据集分享
本数据集含4200张真实农田图像,YOLO格式,单类别(杂草)高质量标注,覆盖多作物、多光照、多生长阶段等复杂场景,专为智慧农业杂草检测与智能除草设备研发设计,支持YOLOv5/v8/v10等主流模型训练。
378 94
|
11天前
|
存储 人工智能 JSON
Qwen 本地部署搭配 ComfyUI 生成 AI 漫剧完整实操指南(小白零基础可落地,零成本无限生成+角色一致性天花板)
2026全网最优本地漫剧流水线:零成本、离线运行、角色统一、低配(8G显卡)可跑。融合Qwen本地大模型+ComfyUI双引擎,实现剧本生成→分镜绘图→动态成片全自动,隐私安全、无审核限流,新手30分钟上手,日更无忧。(239字)
|
2天前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
397 15