我想在布局的中间画一条线,并使用它作为其他项目的分隔符,如TextView。有没有一个好的小部件。我真的不想使用图像,因为它很难匹配其他组件到它。我也想让它有相对的位置。谢谢
当前回答
//for vertical line:
<View
android:layout_width="1dp"
android:layout_height="fill_parent"
android:background="#00000000" />
//for horizontal line:
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="#00000000" />
//it works like a charm
其他回答
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="2dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="2dp"
android:scaleType="fitXY"
android:src="?android:attr/listDivider" />
简单的解决方案就是在你的布局中添加这段代码,并将'Id_of__view_present_above'替换为视图的id,下面你需要分隔符。
<TextView
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#c0c0c0"
android:id="@+id/your_id"
android:layout_marginTop="16dp"
android:layout_below="@+id/Id_of__view_present_above"
/>
我通常使用这段代码添加水平线:
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"/>
若要添加垂直分隔符,请切换layout_width和layout_height值
如果你要经常使用它,最好的办法是
styles.xml:
<style name="Seperator">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">1dp</item>
<item name="android:background">@color/light_color</item>
</style>
现在在你的布局中,像这样添加它:
<View style="@style/Seperator" />
为了改进Alex Kucherenko和Dan Dar3提供的答案
我把这个添加到我的样式中:
<style name="Divider">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">1dp</item>
<item name="android:background">?android:attr/listDivider</item>
</style>
然后在我的布局是更少的代码和更容易阅读。
<View style="@style/Divider"/>
推荐文章
- apk (.apk)和应用程序包(.aab)的区别
- 如何设置超时在改造库?
- Android - SPAN_EXCLUSIVE_EXCLUSIVE跨度不能为零长度
- TextView的字体大小在Android应用程序改变字体大小从本机设置
- 如何模拟Android杀死我的进程
- 禁用EditText闪烁光标
- Android Eclipse -无法找到*.apk
- 设置TextView文本从html格式的字符串资源在XML
- 如何允许所有网络连接类型HTTP和HTTPS在Android(9)馅饼?
- Android加载JS包失败
- Android Studio, logcat在应用程序关闭后清理
- 在android中从上下文获取活动
- 无法解析主机"<URL here>"没有与主机名关联的地址
- getActivity()在Fragment函数中返回null
- 按钮背景是透明的