我有一个表格布局,可以横向显示导航栏的按钮,并且大小相同。为此,我使用android:layout_weight
,但我想在导航栏的按钮之间添加一条花哨的垂直线(as you can see here for example between "messages" and "video call")。
我尝试了几种方法但没有成功,最后一种方法在按钮上使用了marginRight
,但它似乎不能使用`android:layout_weight。< / em>的
这是我的TableLayout
<TableLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="1"
android:layout_alignParentBottom="true"
android:background="#c0c0c0">
<TableRow>
<Button
android:id="@+id/picture"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:padding="0dip"
android:layout_margin="0dip"
android:layout_weight="1"
android:text="Picture"
android:background="@drawable/nav_button"
style="@style/nav_button" />
<Button
android:id="@+id/friends"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_margin="0dip"
android:layout_weight="1"
android:padding="0dip"
android:text="Friends"
android:background="@drawable/nav_button"
style="@style/nav_button" />
</TableRow>
</TableLayout>
答案 0 :(得分:3)
实际上我不知道你为什么要使用TableLayout
,但我想这不是一个要求,因为你在谈论NavBar / ActionBar。因此,我建议您使用LinearLayout
,以便在两个按钮之间显示此垂直分隔线。
以下是它的工作原理:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="?android:attr/dividerVertical"
android:dividerPadding="12dp"
android:orientation="horizontal"
android:showDividers="middle">
<Button
android:id="@+id/picture"
style="@style/nav_button"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_margin="0dip"
android:layout_weight="1"
android:background="@drawable/nav_button"
android:padding="0dip"
android:text="Picture" />
<Button
android:id="@+id/friends"
style="@style/nav_button"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_margin="0dip"
android:layout_weight="1"
android:background="@drawable/nav_button"
android:padding="0dip"
android:text="Friends" />
</LinearLayout>
注意:相关部分为android:divider
和android:showDividers
。这些是Android 3.0(API级别10)中添加的属性。您可以在Docs (click)。
答案 1 :(得分:0)
在按钮标签之间插入视图
<View
android:id="@+id/divider"
android:layout_gravity="center"
android:background="@android:color/white"
android:layout_width="1dp"
android:layout_marginTop="2dp"
android:layout_marginBottom="2dp"
android:layout_height="match_parent" />