使用样式设置layout_width,layout_height

9
我可以帮您进行翻译。这段内容的意思是:「我使用了一个样式文件来为相同的布局设置独特的样式。」
「样式:」
<resources xmlns:android="http://schemas.android.com/apk/res/android">
   <!-- User form layout style -->
   <style name="UserFormLayoutRow">
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:orientation">horizontal</item>
    <item name="android:paddingBottom">@dimen/padding_small</item>
   </style>
</resources >

//在布局文件中

 <LinearLayout
   style="@style/UserFormLayoutRow" >
         //contents
 </LinearLayout>

错误:(设计时间)

enter image description here

运行时错误:

06-13 05:58:14.506: E/AndroidRuntime(936): Caused by: java.lang.RuntimeException: Binary XML file line #105: You must supply a layout_width attribute.

我错在哪里了?TIA


1
你应该指定线性布局的宽度和高度。我猜你还没有这样做。 - Raghunandan
1
@ Raghunandan 我在样式文件中指定了吧?我不想再写一遍了。假设有一百个线性布局,因此我想将它放在样式文件中并从那里获取? - vnshetty
对我来说也是一样的,你确定第105行有相同的LinearLayout吗? - Triode
1
你只是在res\values文件夹中定义了它,而没有在values-v11values-v14文件夹中定义吗?根据这个问题,你可以尝试在这两个文件夹中也定义它们。 - Shobhit Puri
@ laalto <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /> - vnshetty
显示剩余4条评论
2个回答

4

编辑 我查看了您的情况。看起来layout_width和layout_height必须在layout下定义。如果您不想在xml中提及它们,则可以在style.xml中提及并将其用于您的视图。


6
可以请你提供一个官方链接吗? - vnshetty
1
@RajaJawahar,我遇到了一个问题,当我使用styles.xml应用layout_width和layout_height时,上述样式不适用于视图。你能提供一些示例代码或者我错过了什么吗? - BABU K

0

我曾经遇到过同样的问题,解决方法是在布局XML文件中为高度和宽度都提供wrap_content。然后在样式XML文件中覆盖任何你想要的高度和宽度,这样你就不需要再次在布局XML文件中更改值了。最后只需将样式属性添加到相应的视图即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接