我有自定义列表视图并为其定义了一种样式。我无法更改listview上项目的文本大小。我试图通过布局更改它,以便它可以根据设备动态更改。
styles.xml
<style parent="@android:attr/listViewStyle" name="ListStyle">
<item name="android:background">@android:color/white</item>
<item name="android:divider">@drawable/divider</item>
<item name="android:textSize">26dp</item>
<item name="android:textStyle">bold</item>
</style>
xml layout
<TvList style="ListStyle"
android:id="@+id/mainview"
android:layout_height="300dp"
android:layout_width="wrap_content" />
我知道我可以在代码中使用setTextSize
来更改字体大小。但我想改变它应用样式。
关于如何改变它的任何建议?
由于
答案 0 :(得分:2)
列表视图中文本的大小由ListView的适配器项目资源定义。如果为列表视图项创建自定义视图并定义TextView,则可以更改该文本视图中字体的大小,这将定义列表中每个项目中文本的大小。
答案 1 :(得分:1)
我想说最好的方法是定义你想要的资源文件,然后在不同的配置中覆盖它们。例如,创建values / dimen.xml文件并定义:
<dimen name="text_size_medium">18sp</dimen>
然后创建另一个文件values-large / dimen.xml,它定义了
<dimen name="text_size_medium">22sp</dimen>
然后你只需在styles.xml中说:
<item name="android:textSize">@dimen/text_size_medium</item>