关于android控件属性的一些使用小结

本文介绍了如何在Android中使用Drawable资源来改变UI元素的颜色和背景,演示了如何获取设备的屏幕尺寸,并通过定义样式(Styles)来统一和简化UI元素的外观设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作者:丁雪贞


1.Drawable的使用

最经常会处理Drawable作为类型的资源回收绘制到屏幕上的东西; Drawable类提供了一个通用的API来处理一个基本的视觉资源,可以采取多种形式。(讲的有点抽象)讲白点就是获取res下的参数

例:改变TextView文字颜色-引用Drawable颜色常熟及背景色

values下的color.xml

Xml代码


< ?xml version="1.0" encoding="utf-8" ?>   
< resources>   
< drawable name="darkgray">#808080FF< /drawable>   
< drawable name="white">#FFFFFFFF< /drawable>   
< /resources>   
< ?xml version="1.0" encoding="utf-8" ?>   
< resources> 
< drawable name="darkgray">#808080FF< /drawable>   
< drawable name="white">#FFFFFFFF< /drawable>   
< /resources>   


对文本框的背景色进行设置

Java代码


Resources resources = 
getBaseContext().getResources();   
Drawable HippoDrawable = 
resources.getDrawable(R.drawable.white);   
mTextView01.setBackgroundDrawable(HippoDrawable);   
Resources resources = getBaseContext().getResources();  
Drawable HippoDrawable = 
resources.getDrawable(R.drawable.white);  
mTextView01.setBackgroundDrawable(HippoDrawable);  


2.获取手机屏幕大小

Java代码

DisplayMetricsdm = new DisplayMetrics();  
getWindowManager().getDefaultDisplay().getMetrics(dm);  
Stirng width =dm.widthPixels;  
Stirng heiht =dm.heightPixels;  
DisplayMetricsdm = new DisplayMetrics(); 
getWindowManager().getDefaultDisplay().getMetrics(dm); 
Stirng width =dm.widthPixels; 
Stirng heiht =dm.heightPixels;


3.Android style 机制

仅仅是加了一个Style. 一个Style就能够实现控件的显示效果样式么?Android的Style机制真的很强大.
例:


Xml代码


< ?xml version="1.0" encoding="utf-8" ?>   
 < resources>   
 < style name="DavidStyleText1">   
< item name="android:textSize">18sp< /item>   
< item name="android:textColor">#EC9237< /item>   
< /style>   
 < style name="DavidStyleText2">   
< item name="android:textSize">14sp< /item>   
< item name="android:textColor">#FF7F7C< /item>   
< item name="android:fromAlpha">0.0< /item>   
< item name="android:toAlpha">0.0< /item>   
< /style>   
< /resources>   
< ?xml version="1.0" encoding="utf-8" ?>   
- < resources> 
- < style name="DavidStyleText1"> 
< item name="android:textSize">18sp< /item>   
< item name="android:textColor">#EC9237< /item>   
< /style> 
- < style name="DavidStyleText2"> 
< item name="android:textSize">14sp< /item>   
< item name="android:textColor">#FF7F7C< /item>   
< item name="android:fromAlpha">0.0< /item>   
< item name="android:toAlpha">0.0< /item>   
< /style> 
< /resources>  


Xml代码


< ?xml version="1.0" encoding="utf-8" ?>   
- < LinearLayout xmlns:android=
"http://schemas.android.com/apk/res/android" 
android:background="@drawable/white" android:orientation=
"vertical" android:layout_width="fill_parent" 
android:layout_height="fill_parent">   
< !-- 应用模式1的TextView   -->   
< TextView style="@style/DavidStyleText1" 
android:layout_width="fill_parent" android:layout_height=
"wrap_content" android:gravity="center_vertical|
center_horizontal" android:text="@string/str_text_view1" />   
 < !-- 应用模式2的TextView   -->   
< TextView style="@style/DavidStyleText2" 
android:layout_width="fill_parent" android:layout_height=
"wrap_content" android:gravity="center_vertical|
center_horizontal" android:text="@string/str_text_view2" />   
< /LinearLayout>  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值