在dimensions.xml中使用FILL_PARENT

Séb*_*ien 2 xml android android-layout

我的 View宽度必须取决于屏幕宽度:

  • 它必须在小屏幕上填充屏幕(小于600dip宽)
  • 它必须在较大的屏幕上具有固定宽度(600dip)

我希望我可以使用存储在XML文件中的维度:

mylayout.xml:

 <View
   android:layout_height="100dip"
   android:layout_width="@dimen/myview_width"/>
Run Code Online (Sandbox Code Playgroud)

值-sw600dp/dimensions.xml:

    <dimen name="myview_width">600dip</dimen>
Run Code Online (Sandbox Code Playgroud)

值/ dimensions.xml:

    <dimen name="myview_width">FILL_PARENT</dimen> <!-- NOT SUPPORTED -->
Run Code Online (Sandbox Code Playgroud)

...但元素中FILL_PARENT不支持使用dimen.

在XML中实现这一目标的最简洁方法是什么?

小智 11

您应该为不同的屏幕使用样式.像这样:

 <View
   style="@style/MyStyle"
   android:layout_height="100dip"/>
Run Code Online (Sandbox Code Playgroud)

在values-sw600dp/my_style.xml中:

    <style name="MyStyle">
        <item name="android:layout_width">600dip</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

在values/my_style.xml中:

    <style name="MyStyle">
        <item name="android:layout_width">match_parent</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

有了它,你可以做你想要的.