我有一个包含5个textview的XML文件,所有文本视图都使用相同的textSize。目前,我定义了这样的大小:
android:textSize="30dp"
但是,我希望能够快速应用以下内容:
android:textSize="text_size"
textSize是我在某处定义的变量,可以在我的XML文件中的任何地方使用。我尝试在Android项目的strings.xml文件中定义这些变量,并像这样调用它们:
android:textSize="@string/text_size"
在strings.xml中将如此定义
<string name="text_size">30dp</string>
它在Ecplise中运行良好,并且在图形布局中表现得很好。但是当我尝试在手机上运行应用程序时,它就崩溃了。
那么,有没有办法在我的XML布局文件中定义变量?感谢。
答案 0 :(得分:3)
您将它放在strings.xml
中的想法很接近,但这些值需要在维度XML文件中设置。文档为here。
使用您的示例,您可以创建一个名为res/values/my_dimens.xml
的文件。然后放在那里
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="my_text_size">30dp</dimen>
</resources>
然后在布局中使用它,只需设置
即可android:textSize="@dimen/my_text_size"