被忽略的样式中的android属性

时间:2015-12-28 07:09:04

标签: android android-styles android-gridlayout

我为按钮网格创建了一个按钮样式,但由于一些奇怪的原因,该样式的某个属性不起作用。这很奇怪,因为其他一切都有。有人可以发现这个问题吗?

这是我的按钮:

    <Button
        style="@style/BtnStyle"
            grid:layout_columnWeight="1"
        android:text="7" />

这就是它的风格:

<style name="BtnStyle">
    <item name="android:layout_width">@dimen/btn_width</item>
    <item name="android:layout_height">@dimen/btn_height</item>
    <item name="android:textSize">@dimen/btn_text_size</item>
    <item name="android:background">@drawable/btn_shape</item>
    <item name="android:textColor">#ffffff</item>
    <item name="grid:layout_columnWeight">1</item>
    <item name="grid:layout_gravity">fill_horizontal</item>
    <item name="android:gravity">center</item>
</style>

正在传播所有属性,但忽略“grid:layout_columnWeight”。所以我必须重复多次。

谢谢你!

1 个答案:

答案 0 :(得分:0)

我没有网格:layout_columnWeight是一个有效的android属性,因为它的前缀是 grid ,但不是 android 。如果你正在使用GridLayout,你可能需要使用 android:layout_columnWeight  (https://developer.android.com/reference/android/widget/GridLayout.LayoutParams.html

如果它是库中的属性,您可能需要添加类似

的内容
xmlns:appcompat="http://schemas.android.com/apk/res-auto"

在xml的根标记中。

如果是自定义库,我认为您应该在res / attr /

中定义属性