Android 动态创建View,是否可以使用 style,如何使用?

在代码中动态创建View的时候是否可以使用在Style.xml中声明的style,类似于在xml布局中使用的style="@style/..."这样!如果可以,该怎么使用... 在代码中动态创建View的时候是否可以使用在 Style.xml 中声明的 style,
类似于在 xml 布局中使用的 style="@style/..." 这样!

如果可以,该怎么使用?
展开
 我来答
半塘无水
推荐于2016-04-08 · TA获得超过2.2万个赞
知道大有可为答主
回答量:4220
采纳率:68%
帮助的人:900万
展开全部
Android 是可以使用 style的,具体方法为:
1、在Android中可以这样定义样式:
在res/values/styles.xml文件中添加以下内容
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name=“itcast”>
<item name="android:textSize">18px</item>
<item name="android:textColor">#0000CC</item>
</style>
</resources>
2、在layout文件中可以像下面这样使用上面的android样式:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ....>
<TextView style="@style/itcast"
..... />
3、可以使他继承父样式,当然,如果父样式的值不符合需求,你也可以对它进行修改,如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="itcast">
<item name="android:textSize">18px</item>
<item name="android:textColor">#0000CC</item>
</style>
<style name="subitcast" parent="@style/itcast">
<item name="android:textColor">#FF0000</item>
</style>
</resources>
梦溪幻翔
2015-04-09 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:48
采纳率:0%
帮助的人:46.9万
展开全部
你可以这样:
LayoutInflater i = getLayoutInflater();

View v = i.inflate(R.layout.xxx, null);
然后再xxx.xml文件中定义style类型
不知道你是不是这个需求
更多追问追答
追问
这种我知道,但是我连单个View的xml也不想写,想直接在代码中 new 出View后,直接设置 style,不知道这样可不可以! 还有, 你说的这种写法我用过, 样式是可以,不过 margin 这些在 style中设置是无效,需要在代码中重新设置!
追答
View v = new View(this);
v.setTextAppearance(this, R.style.xxx);
试试这个
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式