android在运行时动态更改样式

我想使我的字体大小可配置,但我也想在我的布局中使用样式标记。是否可以在运行时更改样式的定义?或者是在每个textview等上手动更改单个样式元素的唯一选项?



慕桂英4014372
浏览 776回答 3
3回答

BIG阳

不支持在创建视图后更改样式..所以你可以做的是:创建一个类型为值的新的android xml文件添加新主题将您的元素添加到该主题及其值并保存文件现在,当您动态创建新视图时,您将调用允许定义defStyle的构造函数。然后,通过指向R.“XML文件名”,指向刚刚创建的样式ID。“您的样式ID”myTextView.setTextAppearance(getApplicationContext(), R.style.boldText);

慕妹3146593

我不确定这是否适用于您的情况,但您可以创建定义样式的主题。还有Activity.setTheme(),你在一个主题XML文件传递。主题包含一堆定义。我只用它来覆盖某些全局样式,比如背景颜色,我不知道你是否可以使用它来定义你的小部件将使用的样式。不过值得一试。如果有效,请告诉我!
打开App,查看更多内容
随时随地看视频慕课网APP