如何在中间的android中放置带有文本的元素之间的分隔线?
Posted
技术标签:
【中文标题】如何在中间的android中放置带有文本的元素之间的分隔线?【英文标题】:how to put divider line between elements with text in the middle android? 【发布时间】:2015-05-30 07:29:48 【问题描述】:我正在尝试设计我的 android 应用程序,因此我需要在中间创建一个带有文本的分隔线。 我使用此代码 XML 来创建分隔线:
<View
style="?android:attr/listSeparatorTextViewStyle"
android:layout_
android:layout_
android:layout_below="@+id/login_button"
android:layout_marginTop="20dp"
android:background="@android:color/white"
/>
但我不知道如何将文本放在中间。
像这样:------- 文字 ------- 但一条连贯的线
【问题讨论】:
您能否更好地解释一下自己,或者发布一个指向显示所需结果的图片的链接? 你的意思是要在两个文本之间添加分隔符? 我的意思是: ----- 文本 ----- 您可以为您的 TextView 使用 9 个补丁背景,以实现该结果。或将您的 TextView 覆盖在“行”视图之上。 这适用于不同尺寸***.com/a/30413493/2428524 【参考方案1】:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_
android:layout_
android:orientation="horizontal" >
<TextView
android:layout_
android:layout_
android:background="@android:color/transparent"
android:text="-----------------------------"
android:textColor="#ffff00" />
<TextView
android:id="@+id/but_book_now"
android:layout_
android:layout_
android:background="@android:color/transparent"
android:text="This is button"
android:textColor="#ffff00" />
<TextView
android:layout_
android:layout_
android:background="@android:color/transparent"
android:text="-----------------------------"
android:textColor="#ffff00" />
【讨论】:
【参考方案2】:为了将来的参考,这里有一个简单的解决方案,它可以适当地调整到父级的宽度,并显示一条连续的分隔线。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_
android:layout_>
<View android:layout_
android:layout_
android:layout_centerVertical="true"
android:layout_marginStart="40dp"
android:layout_marginEnd="8dp"
android:layout_toStartOf="@id/sep_text"
android:background="@android:color/black"/>
<TextView android:id="@+id/sep_text"
android:layout_
android:layout_
android:layout_centerInParent="true"
android:text="misc"/>
<View android:layout_
android:layout_
android:layout_centerVertical="true"
android:layout_marginStart="8dp"
android:layout_marginEnd="40dp"
android:layout_toEndOf="@id/sep_text"
android:background="@android:color/black"/>
</RelativeLayout>
可以通过sep_text
id 访问文本。
高度已固定为40dp
,但可以更改为wrap_content
。
【讨论】:
以上是关于如何在中间的android中放置带有文本的元素之间的分隔线?的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 rmarkdown 在 PDF 中放置表格或更精确地格式化标题文本?