我希望能够创建表(例如,使用TableLayout),而侧面没有边框。 目的是实现以下目标:
我正在尝试这样的事情:
border.xml
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:left="-5dp" android:right="-5dp" android:top="0dp" android:bottom="0dp">
<shape
android:shape="rectangle">
<stroke android:width="1dp" android:color="#123456" />
</shape>
</item>
</layer-list>
和表格布局(一些用于textView的示例值):
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/border"
android:padding="5dp" >
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/home"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Months" />
<TextView
android:id="@+id/status"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Number of Visits" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="January" />
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="1" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Februrary" />
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="" />
</TableRow>
</TableLayout>
它显示如下-我无法获得列之间的中间线:
如何实现我的目标?
答案 0 :(得分:0)
嗯嗯。下面的代码行将为您提供帮助。
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/border"
android:padding="5dp" xmlns:android="http://schemas.android.com/apk/res/android">
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/home"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Months" />
<View android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#000"
android:layout_gravity="center"/>
<TextView
android:id="@+id/status"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Number of Visits" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="January" />
<View android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#000"
android:layout_gravity="center"/>
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="1" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Februrary" />
<View android:layout_width="1dp"
android:layout_height="match_parent"
android:background="#000"
android:layout_gravity="center"/>
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="" />
</TableRow>
</TableLayout>
别忘了欣赏和喜欢答案。
答案 1 :(得分:0)
创建一个带有右边框的新图形:
border_right.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:left="0dp" android:right="-5dp" android:top="0dp" android:bottom="0dp">
<shape
android:shape="rectangle">
<stroke android:width="1dp" android:color="#123456" />
</shape>
</item>
</layer-list>
并将此可绘制对象用于您的布局,如下所示:
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/border"
android:padding="5dp" >
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/home"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Months" />
<TextView
android:id="@+id/status"
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border_right"
android:gravity="center"
android:padding="15dip"
android:text="Number of Visits" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="January" />
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border_right"
android:gravity="center"
android:padding="15dip"
android:text="1" />
</TableRow>
<TableRow
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border"
android:gravity="center"
android:padding="15dip"
android:text="Februrary" />
<TextView
android:layout_width="0dp"
android:layout_weight="1"
android:background="@drawable/border_right"
android:gravity="center"
android:padding="15dip"
android:text="" />
</TableRow>
</TableLayout>
以上代码的输出如下: