我的表布局如下所示,我使用下面的代码在行及其颜色之间设置分隔线,在我的设计中可以看到已设置分隔线,但未设置分隔线颜色!
请提出建议,如何设置行之间的分隔线颜色?
用于在表格布局中设置分隔线及其颜色的代码。
android:showDividers="middle"
android:divider="@color/colorAccent"
完整表格布局代码。
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/table_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="vertical"
android:showDividers="middle"
android:divider="@color/colorAccent"
tools:context=".BookAppointment"
android:stretchColumns="1">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/table_row_margin"
android:orientation="horizontal"
android:textAlignment="center">
<ImageView
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_marginLeft="@dimen/margin"
android:padding="@dimen/padding"
android:src="@drawable/india_flag" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/margin"
android:textSize="@dimen/cell_text_size" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/margin"
app:srcCompat="@drawable/chevron_right_24px"
android:layout_gravity="center_vertical" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/table_row_margin"
android:orientation="horizontal">
<ImageView
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_marginLeft="@dimen/margin"
android:padding="@dimen/padding"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/margin"
android:textSize="@dimen/cell_text_size" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/margin"
app:srcCompat="@drawable/chevron_right_24px"
android:layout_gravity="center_vertical" />
</TableRow>
</TableLayout>
答案 0 :(得分:0)
我在您的代码中看不到问题。但这是一个确切的例子。
用于行之间的分隔线:
<TableLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:divider="@color/colorPrimary"
android:showDividers="middle">
以及列之间的分隔符:
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:divider="@color/colorPrimary"
android:showDividers="middle">
说明:
<TableLayout>
中的分隔符标签用于将分隔符放置在其直接子元素之间,即行。
<TableRow>
中的分隔符标记用于将分隔符放置在其直接子元素之间,即列
答案 1 :(得分:0)
您可以创建一个可绘制的“ cell_divider.xml”:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<color android:color="#f00" />
</item>
</selector>
比您可以像在分隔器属性中设置drawable一样:
android:divider="@drawable/cell_divider"
答案 2 :(得分:0)
尝试使用可绘制形状作为表格布局的分隔线。
divider_shape.xml
<?xml version="1.0" encoding="UTF-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
android:insetBottom="2dp"
android:insetTop="2dp">
<shape>
<size android:width="1dp" />
<solid android:color="#FFCCCCCC" />
</shape>
</inset>
并按如下所示将其添加到您的表格布局中
android:divider="@drawable/divider_shape"
android:showDividers="middle"