零、前言

[1].本想在控件使用中穿插讲一下资源在加载,但感觉知识点挺多还是单开一篇专门讲一下吧。
[2].values/string.xml的使用
[3].values/dimens.xml的使用
[4].values/colors.xml的使用
[5].values/styles.xml的使用
[6].选择器selector的使用
[7].anim里xml动画加载


一、values/string.xml的使用

1.单字符串
<string name="title">张风捷特烈</string>
//使用单字符串
setTitle(getResources().getString(R.string.title));
//xml里
android:text="@string/title"
定义string.png

2.字符串数组
<string-array name="coder"><item>Java</item><item>Python</item><item>JavaScript</item><item>C++</item><item>C</item>
</string-array>
//获取字符数组
String[] coders = getResources().getStringArray(R.array.coder);
for (int i = 0; i < coders.length; i++) {mIdTvCoder.append(coders[i]+"\n");
}
加载数组.png


二、values/dimens.xml的使用

<dimen name="sp_18">18sp</dimen>
//xml
android:textSize="@dimen/sp_18"
//获取尺寸==已转换为px
float dimension = getResources().getDimensionPixelOffset(R.dimen.sp_18);
mIdTvCoder.setTextSize(TypedValue.COMPLEX_UNIT_PX,dimension);

三、values/styles.xml的使用

用来抽取一些常用样式

<style name="SmallBlueTextView"><item name="android:layout_height">wrap_content</item><item name="android:layout_width">wrap_content</item><item name="android:textSize">@dimen/sp_12</item><item name="android:textColor">@dimen/sp_12</item>
</style>

使用

    <TextViewandroid:id="@+id/id_tv_coder"style="@style/SmallBlueTextView"/>

四、values/colors.xml的使用

<color name="gray">#eeeeee</color>
//获取颜色
int color = getResources().getColor(R.color.gray);
mIdTvCoder.setBackgroundColor(color);
//xml里
android:background="@color/gray"
颜色.png

五、选择器selector的使用

1.drawable文件夹下的selector:drawable/sel_db_gary_white.xml

颜色部分都可以改成相应的图片资源,这里就不赘述了

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><!--按压为灰色--><item android:drawable="@color/gray" android:state_pressed="true"/><!--不可用状态为红色--><item android:drawable="@color/red" android:state_enabled="false"/><!--默认白色--><item android:drawable="@color/white"/>
</selector>

当做一个drawable使用

 android:background="@drawable/sel_db_gary_white"

常见属性

  1、android:drawable 可绘制对象资源。2、android:state_pressed 按下3、android:state_checked 选中4、android:state_checkable 可选中5、android:state_selected 方向键浏览列表6、android:state_enabled 可用7、android:state_focused 获取焦点8、android:state_activated 激活9、android:state_hovered 光标悬停10、android:state_window_focused 窗口有焦点
2.color文件夹下的selector:color/sel_col_gary_white.xml

注意小坑,只能给文字用,背景一用就崩了!!!
在res文件夹下新建color文件夹

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:color="#A6A6A6" android:state_enabled="false"/><item android:color="#A6D3CF" android:state_pressed="true"/><item android:color="@color/blue"/>
</selector>

xml中当作颜色使用

android:textColor="@color/sel_col_gary_white"

代码中使用

//获取选择器
ColorStateList selColor = getResources().getColorStateList(R.color.sel_col_gary_white);
mIdTvCoder.setTextColor(selColor);

六、anim里xml动画加载

定义

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"><rotateandroid:duration="2000"android:fromDegrees="0"android:pivotX="50%"android:pivotY="50%"android:repeatMode="reverse"android:toDegrees="360"/>
</set>

使用

Animation rotate = AnimationUtils.loadAnimation(this, R.anim.anim_rotate);
mIdTvCoder.setAnimation(rotate);
mIdTvCoder.startAnimation(rotate);

后记、

1.声明:

[1]本文由张风捷特烈原创,转载请注明
[2]欢迎广大编程爱好者共同交流
[3]个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正
[4]你的喜欢与支持将是我最大的动力

2.连接传送门:

更多安卓技术欢迎访问:安卓技术栈
我的github地址:欢迎star
简书首发,腾讯云+社区同步更新
张风捷特烈个人网站,编程笔记请访问:http://www.toly1994.com

3.联系我

QQ:1981462002
邮箱:1981462002@qq.com
微信:zdl1994328

4.欢迎关注我的微信公众号,最新精彩文章,及时送达:
公众号.jpg

转载于:https://www.cnblogs.com/toly-top/p/9781907.html

2-VIV-Android控件之res资源加载相关推荐

  1. DevExpress 使用 XtraTabbedMdiManager 控件以 Tab样式加载 Mdi窗体并合并 RibbonControl 解决方案

    DevExpress 使用 XtraTabbedMdiManager 控件以 Tab样式加载 Mdi窗体并合并 RibbonControl 解决方案 参考文章: (1)DevExpress 使用 Xt ...

  2. android verticalviewpager 下拉刷新 上拉加载_设计规范 | 详解组件控件结构体系:加载类...

    设计师在进行APP设计时,往往会更加专注于界面的布局.界面和界面之间怎么跳转.操作反馈,却往往忽略掉一个比较重要的环节,就是APP数据加载中的设计.那么我们怎么处理好界面交互中的加载设计,保证体验无缝 ...

  3. VC++图片框控件静态和动态加载位图

    win10,vc6:新建一个对话框工程:右击资源文件夹,插入...: 类型,Bitmap:引入:选择一个bmp图片: 插入后如下:自动给了一个id: 图片框属性:类型,下拉选中 位图: 图像属性,选中 ...

  4. 用户控件制作时设计模式加载报错的解决办法

    最近改了个用户控件,在设计界面加载时总是报错. 网上查了下可以用DesignMode解决,但是在构造函数里用DesignMode还是不行.查原因后发现该Design模式不能嵌套UserControl, ...

  5. 关于控件postback 后viewstate加载失败的问题

    我写了一个控件Inherits TextBox,里面有一个复杂属性Tip,但每次postback的时候都说加载viewstate失败,除非我在!postback的情况下给Tip.xxx赋值. 下面我贴 ...

  6. html分页自动加载数据,硕正控件默认会自动加载数据

    硕正控件 autoLoad 页面加载时是否自动加载表格数据 默认true,如果自己需要根据页面条件查询数据  建议设置为false  自己去查询加载数据. 硕正表格控件API 属性 属性的定义, 例如 ...

  7. delphi控件切图界面闪烁_8、控件系列之_加载占位图+页面指示器

    Skeleton Screen/加载占位图 Skeleton Screen(加载占位图)是近年流行的加载控件,通常表现形式是在界面上待加载区域填充灰色的占位图,与线框图的效果非常相似.Skeleton ...

  8. BUI树形控件TreeList的异步加载

    在测试树形列表的异步加载时,发现一个问题,先贴源码,如下: BUI.use(['bui/tree','bui/data'], function (Tree, Data) { var store = n ...

  9. android 控件 堆叠_每次在Android上正确地向后堆叠

    android 控件 堆叠 When navigating in a mobile app, the screens opened after one another form a stack, th ...

最新文章

  1. 元宇宙iwemeta: 2021年云计算行业发展研究报告
  2. 经典面试题 | 讲一讲JVM的组成
  3. php父类继承子类_php有多态吗 多态都有什么好处?理解好多态往往能事半功倍...
  4. JavaScript getFullYear() 方法
  5. python 创建文件_Python入学首次项目,新手必看,简单易操作
  6. json字符串和字典类型的相互转换(转载)
  7. java 多重压缩下载_Java 多文件边压缩边下载
  8. 2021年中国养老前景调查报告
  9. centos 使用rz sz指令
  10. 【运维安全】Apache 服务器存在高危提权漏洞,请升级至最新版本 2.4.39
  11. tolua中使用protobuf3—集成lua-protobuf
  12. 【ccpc网络赛】YJJ's Salesman【1010】【树状数组+离散化+dp】
  13. 中控考勤机忘记密码处理
  14. 深度学习结合SLAM的研究思路/成果整理之(二)语义SLAM 端到端
  15. 内核函数-assembler.h分析
  16. 解码jpg图片c语言,图像解码之一——使用libjpeg解码jpeg图片
  17. python英语单词 扇贝英语安卓下载_扇贝单词英语版app下载_靠谱的外语软件扇贝单词英语版下载安装 安卓版 V3.4.302 - 罐头安卓网...
  18. 《不能承受的生命之轻》--米兰·昆德拉
  19. Visual Studio Code 官方护眼主题绿豆沙颜色修改,让你的眼睛远离疲劳!
  20. 美国洛杉矶时间转 格林威治时间

热门文章

  1. 数领科技|主流BIM软件及公司介绍
  2. Python学习,第一课(基础知识,利用urllib库入门)
  3. 微信二维码识别、微信数据分析
  4. PCb过孔大小设置 / 丝印层字符尺寸设置
  5. linux和Windows线程进程的区别
  6. 清华大学出版社书评征集图书列表
  7. android韩国代理,韩国Android手机市场占有率达70%
  8. java mybatis的SpringBoot博客论坛管理系统
  9. tensorflow 1.14 ssd_mobilenet_v1 模型训练
  10. QQSpider qq空间爬虫