LinearLayout分频器不会在任何地方使用holo显示

时间:2013-09-14 20:37:03

标签: android android-linearlayout android-holo-everywhere divider

我有这个xml文件,应该在dividerTextView之间显示Button

我正在使用holoeverywhere库。

使用此代码时,除法不显示

    <org.holoeverywhere.widget.LinearLayout
                         xmlns:holo="http://schemas.android.com/apk/res-auto"
                         xmlns:android="http://schemas.android.com/apk/res/android"
                        android:id="@+id/topcontainer"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        holo:divider="?attr/dividerVertical"
                        holo:dividerPadding="8dp"
                        android:orientation="horizontal"
                        holo:showDividers="middle" >

                        <org.holoeverywhere.widget.TextView
                            android:id="@+id/textView6"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_vertical"
                            android:layout_weight="1"
                            android:text="@string/str1" />

      <org.holoeverywhere.widget.Button
                            android:id="@+id/add"
                            style="?attr/borderlessButtonStyle"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_vertical"
                            android:text="ADD" />
</org.holoeverywhere.widget.LinearLayout>

现在问题在于LinearLayout

中的这些属性
holo:divider="?attr/dividerVertical"
holo:dividerPadding="8dp"
holo:showDividers="middle"

如果我将这些属性的namespace更改为android,就像这样,它会起作用并显示分隔符。

任何建议

1 个答案:

答案 0 :(得分:1)

使用android命名空间。那应该是好的。

我看到attrs here的源代码。

<declare-styleable name="LinearLayout">
        <attr name="android:baselineAligned"/>
        <attr name="android:baselineAlignedChildIndex"/>
        <attr name="android:divider"/>
        <attr name="android:dividerPadding"/>
        <attr name="android:gravity"/>
        <attr name="android:measureWithLargestChild"/>
        <attr name="android:orientation"/>
        <attr name="android:showDividers"/>
        <attr name="android:weightSum"/>
</declare-styleable>

自定义attrs似乎是用android命名空间定义的。

此外,查看org.holoeverywhere.widget.LinearLayout here的来源,您会看到LinearLayout类正在使用上面定义的attrs,例如LinearLayout_ android _baselineAlignedChildIndex,因此适用于android namespace