1

在使用应支持多种屏幕尺寸的应用程序时,我遇到了两难境地。通过样式缩放文本大小、宽度和高度等属性的最佳方法是什么?理想情况下,我会喜欢这样的设置:

layout.xml:
  <YourView style="@style/Footer"/>

styles.xml:
  <style name="Footer"> 
    <item name="android:layout_height">@string/FooterHeight</item>
    <item name="android:layout_width">fill_parent</item>
    <item name="android:background">@drawable/background_footer</item>
    <item name="android:layout_gravity">bottom</item>
  </style>

values/layout_vals.xml:
  <string name="FooterHeight">50dp</string>

values-sw600dp/layout_vals.xml:
  <string name="FooterHeight">80dp</string>

然后,为了更改视图的高度,只需创建一个具有目标最小宽度的新文件夹并编辑 *layout_vals.xml* 的值,并留下所有关于宽度、重力、背景等,留下更干净的设置和更容易的编辑。

但是,我尝试过并发现这个确切的设置不起作用。现在,我只是将整个 styles.xml 复制到不同的“layout-swXXdp”文件夹中并换出值。是否有人对另一种与此相当或更好甚至比这更好的项目设置方法有建议?感谢您的时间!

4

1 回答 1

1

使用@dimen资源而不是字符串- 我认为它正是您正在寻找的(除了它会进入 res/values-sw600dp)

于 2012-04-20T20:17:52.647 回答