版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】Android使用shape制作drawable素材
Android开发中,资源文件中会有大量的图片素材文件,这样会额外增加APP的大小,有时面对对APP大小有限制的,那就要考虑尽可能的对图片进行压缩处理或者减少资源文件中图片的数量,那么减少了资源素材文件,我们如何满足应用对图形的丰富要求呢?我们可以使用shape绘制的,有很多优点。从而满足我们的要求,下面是我整理的一些素材:
首先看最终效果:1、主布局XML文件<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:background="@drawable/s1"
android:padding="10dp"
android:text="@string/s1"
android:textColor="#fff"
android:textSize="16sp"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:background="@drawable/s2"
android:padding="10dp"
android:text="@string/s2"
android:textColor="#ff9800"
android:textSize="16sp"
/>
<ImageButton
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginBottom="20dp"
android:background="@drawable/s3"
android:padding="10dp"
android:scaleType="fitXY"
android:src="@drawable/ic_launcher"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:background="@drawable/s4"
android:padding="5dp"
android:text="@string/s4"
android:textColor="#fff"
android:textSize="16sp"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:background="@drawable/s5"
android:padding="5dp"
android:text="@string/s5"
android:textColor="#00bcd4"
android:textSize="16sp"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="20dp"
android:background="@drawable/s6"
android:padding="5dp"
android:text="@string/s6"
android:textColor="#fff"
android:textSize="16sp"
/>
</LinearLayout>2、shape文件
1)s1.xml<?xml
version="1.0"
encoding="utf-8"?>
<shape
xmlns:android="/apk/res/android"
>
<solid
android:color="#23C7B2"
/>
<corners
android:radius="8dp"
/>
</shape>
2)s2.xml
<?xml
version="1.0"
encoding="utf-8"?>
<shape
xmlns:android="/apk/res/android"
>
<solid
android:color="#00000000"
/>
<corners
android:radius="8dp"
/>
<stroke
android:width="1dp"
android:color="#ff9800"
/>
</shape>
3)s3.xml
<selector
xmlns:android="/apk/res/android">
<item
android:state_pressed="true">
<shape
android:shape="oval">
<solid
android:color="#42A0DB"
/>
</shape>
</item>
<item
android:state_focused="true">
<shape
android:shape="oval">
<solid
android:color="#42A0DB"
/>
</shape>
</item>
<item>
<shape
android:shape="oval">
<solid
android:color="#42A0DB"
/>
</shape>
</item>
</selector>
4)s4.xml<selector
xmlns:android="/apk/res/android">
<item
android:state_pressed="true">
<shape>
<solid
android:color="#7F79B5"
/>
<corners
android:radius="8dp"
/>
</shape>
</item>
<item
android:state_focused="true">
<shape>
<solid
android:color="#7F79B5"
/>
<corners
android:radius="8dp"
/>
</shape>
</item>
<item>
<shape>
<solid
android:color="#7F79B8"
/>
<corners
android:radius="8dp"
/>
</shape>
</item>
</selector>
5)s5.xml<selector
xmlns:android="/apk/res/android">
<item
android:state_pressed="true">
<shape>
<solid
android:color="#e3e3e3"
/>
<corners
android:radius="8dp"
/>
<stroke
android:width="1dp"
android:color="#00bcd4"
/>
</shape>
</item>
<item
android:state_focused="true">
<shape>
<solid
android:color="#e3e3e3"
/>
<corners
android:radius="8dp"
/>
<stroke
android:width="1dp"
android:color="#00bcd4"
/>
</shape>
</item>
<item>
<shape>
<solid
android:color="#00000000"
/>
<corners
android:radius="8dp"
/>
<stroke
android:width="1dp"
android:color="#00bcd4"
/>
</shape>
</item>
</selector>
6)s6.xml<?xml
version="1.0"
encoding="utf-8"?>
<selector
xmlns:android="/apk/res/android"
>
<item
android:state_pressed="true">
<layer-list>
<item
android:top="3dp">
<shape>
<solid
android:color="#00bcd4"
/>
<corners
android:radius="8dp"
/>
</shape>
</item>
</layer-list>
</item>
<item
android:state_focused="true">
<layer-list>
<item
android:top="3dp">
<shape>
<solid
android:color="#00bcd4"
/>
<corners
android:radius="8dp"
/>
</shape>
</item>
</layer-list>
</item>
<item>
<layer-list>
<item>
<shape>
<solid
android:color="#dddddd"
/>
<corners
android:radius="8dp"/>
</shape>
</item>
<item
android:bottom="3dp">
<shape>
<solid
android:color="#00bcd4"
/>
<corners
android:radius="8dp"/>
</shape>
</item>
</layer-list>
</item>
</selector>3、String.xml<?xml
version="1.0"
encoding="utf-8"?>
<resources>
<string
name="app_name">shape制作drawable素材</string>
<string
name="action_settings">Settings</string>
<string
name="hello_world">Hello
world!</string>
<string
name="s1">我是第一行</string>
<string
name="s2">我是第二行</string>
<string
na
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年05月北京2024届中国民生银行资产管理部毕业生“未来银行家”暑期管培生校园招考笔试历年参考题库附带答案详解
- 2025年度房地产开发项目承包商资金保障担保合同3篇
- 2025年度拆迁安置补偿合同模板(含房屋买卖)4篇
- 2025年度厂房用电安全改造安装合同范本4篇
- 2025年度城市地下综合管廊建设场地平整与施工合同4篇
- 2025年度茶园场地承包合同范本-茶树种植基地合作经营4篇
- 2024年04月江苏交通银行信用卡中心苏州分中心校园招考笔试历年参考题库附带答案详解
- 临时暑期工劳动协议格式2024年版B版
- 2025年度茶园采摘加工一体化项目合作协议4篇
- 2025年度建筑材料运输安全管理与培训合同3篇
- 2024人教新版七年级上册英语单词英译汉默写表
- 《向心力》参考课件4
- 2024至2030年中国膨润土行业投资战略分析及发展前景研究报告
- 【地理】地图的选择和应用(分层练) 2024-2025学年七年级地理上册同步备课系列(人教版)
- 2024年深圳中考数学真题及答案
- 土方转运合同协议书
- Module 3 Unit 1 Point to the door(教学设计)-2024-2025学年外研版(三起)英语三年级上册
- 智能交通信号灯安装合同样本
- 安全生产法律法规清单(2024年5月版)
- 江苏省连云港市2023-2024学年八年级下学期期末道德与法治试卷(含答案解析)
- 2024年大学试题(宗教学)-佛教文化笔试考试历年高频考点试题摘选含答案
评论
0/150
提交评论