[英]How to draw horizontal and vertical line in Table layout
我想在表格行內繪制一條垂直和水平線 。
我無法附上圖片
我嘗試在表格行中的TextView
周圍繪制線條,但下面沒有正確連接的線條是我的xml和樣式
<TableLayout
android:id="@+id/traningprogram_tabla_monday"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="0,1,2,3"
>
<TableRow
android:id="@+id/traningprogram_tableRow_mondayHeading"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<TextView
android:id="@+id/traningprogram_textView_mondayheadingWeek"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="wrap_content"
android:padding="5dp"
android:textSize="12dp"
android:text="TextView" />
<TextView
android:id="@+id/traningprogram_textView_mondeyheadingWeekName"
android:layout_width="0dp"
android:layout_height="25dp"
android:layout_weight="1"
android:padding="5dp"
android:textSize="12dp"
android:text="TextView" />
</TableRow>
<TableRow android:id="@+id/traningprogram_tableRow_workspeed" android:layout_width="wrap_content" android:layout_height="wrap_content">
<TextView
android:id="@+id/traningprogram_textView_workspeed"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="25dp"
android:background="@drawable/cell_shape"
android:padding="5dp"
android:text="@string/workspeed"
android:textSize="12dp"
></TextView>
<TextView
android:background="@drawable/cell_shape"
android:padding="5dp"
android:id="@+id/traningprogram_textView_workspeedvalue"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="25dp"
android:textSize="12dp"
android:text="TextView"></TextView>
</TableRow>
<TableRow android:id="@+id/traningprogram_tableRow_recoveryspeed" android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView
android:id="@+id/traningprogram__textView_recoveryspeed"
android:layout_width="0dip"
android:layout_height="25dp"
android:layout_weight="1"
android:background="@drawable/cell_shape"
android:padding="5dp"
android:textSize="12dp"
android:text="@string/recoveryspeed" ></TextView>
<TextView
android:background="@drawable/cell_shape"
android:padding="5dp"
android:layout_weight="1"
android:textSize="12dp"
android:id="@+id/traningprogram_textView_recoverspeedvalue"
android:layout_width="0dp" android:layout_height="25dp"
android:text="TextView"></TextView>
</TableRow>
<TableRow android:id="@+id/traningprogram_tableRow_workduration" android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView
android:id="@+id/traningprogram_textView_workduration"
android:layout_width="0dip"
android:layout_height="25dp"
android:layout_weight="1"
android:background="@drawable/cell_shape"
android:padding="5dp"
android:textSize="12dp"
android:text="@string/workduration" ></TextView>
<TextView
android:background="@drawable/cell_shape"
android:padding="5dp"
android:layout_weight="1"
android:textSize="12dp"
android:id="@+id/textView_workdurationValue"
android:layout_width="0dp"
android:layout_height="25dp"
android:text="TextView"></TextView>
</TableRow>
<TableRow android:id="@+id/traningprogram_tableRow_recoverduration" android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView
android:id="@+id/traningprogram_textViewrecoverduration"
android:layout_width="0dip"
android:layout_height="25dp"
android:layout_weight="1"
android:background="@drawable/cell_shape"
android:padding="3dp"
android:text="@string/recoveryduration" ></TextView>
<TextView
android:id="@+id/traningprogram_textView_recoverydurationvalue"
android:layout_width="0dip"
android:layout_height="25dp"
android:layout_weight="1"
android:padding="3dp"
android:text="TextView"
android:textSize="12dp" />
</TableRow>
<TableRow android:id="@+id/traningprogram__tableRow_repe" android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView
android:id="@+id/traningprogram_textView_repes"
android:layout_width="0dip"
android:layout_height="25dp"
android:layout_weight="1"
android:background="@drawable/cell_shape"
android:padding="5dp"
android:textSize="12dp"
android:text="@string/reps" >
</TextView>
<TextView
android:background="@drawable/cell_shape"
android:padding="5dp"
android:id="@+id/traningprogram_textView_repes"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="25dp"
android:textSize="12dp"
android:text="TextView"></TextView>
</TableRow>
</TableLayout>
繪制/ cell_shape
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:bottom="1dp"
android:left="-2dp"
android:right="1dp"
android:top="-3dp">
<shape android:shape="rectangle" >
<stroke
android:width="1dp"
android:color="#FF000000" />
<solid android:color="#00FFFFFF" />
</shape>
</item>
</layer-list>
在此先感謝您的幫助
對於水平線
view v = new View(this);
v.setLayoutParams(new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, 1));
對於垂直線
view v = new View(this);
v.setLayoutParams(new TableRow.LayoutParams(1, TableRow.LayoutParams.MATCH_PARENT));
在代碼中添加它並以編程方式將其添加到表行
編輯:
TableRow row;
row=(TableRow)findViewById(R.id.traningprogram_tableRow_mondayHeading);
row.addView(v);
如果你想在xml中自己創建它,請在每個行項后使用此代碼( TextView
)
對於XML中的水平線
<View android:layout_width="match_parent"
android:background="@android:color/red"
android:layout_height="2dp" />
用於XML中的垂直線
<View android:layout_width="2dp"
android:background="@android:color/red"
android:layout_height="match_parent"/>
試試這個它會起作用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.