我的布局如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
style="@style/behindMenuItemLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Twitter Feeds"
android:textStyle="bold" />
<ListView
android:id="@+id/list"
android:layout_width="350dp"
android:layout_height="50dp" />
<TextView
android:id="@+id/textView1"
style="@style/behindMenuItemLabel1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:text="FaceBook Feeds" />
<ListView
android:id="@+id/list1"
android:layout_width="350dp"
android:layout_height="50dp" />
</LinearLayout>
我的要求是在TextView
和ListView
有人可以帮忙吗?
答案 0 :(得分:233)
它将在TextView
&amp;之间绘制银灰色线条。 ListView
<TextView
android:id="@+id/textView1"
style="@style/behindMenuItemLabel1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:text="FaceBook Feeds" />
<View
android:layout_width="fill_parent"
android:layout_height="2dp"
android:background="#c0c0c0"/>
<ListView
android:id="@+id/list1"
android:layout_width="350dp"
android:layout_height="50dp" />
答案 1 :(得分:20)
您应该使用新的轻量级视图Update-Package –reinstall
来绘制分隔线。
如果您使用Space
代替Space
,您的布局将加载得更快。
水平分隔线:
View
垂直分隔线:
<android.support.v4.widget.Space
android:layout_height="1dp"
android:layout_width="match_parent" />
您还可以添加背景:
<android.support.v4.widget.Space
android:layout_height="match_parent"
android:layout_width="1dp" />
用法示例:
<android.support.v4.widget.Space
android:layout_height="match_parent"
android:layout_width="1dp"
android:background="?android:attr/listDivider"/>
要使用....
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="One"/>
<android.support.v4.widget.Space
android:layout_height="match_parent"
android:layout_width="1dp"
android:background="?android:attr/listDivider"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Two"/>
<android.support.v4.widget.Space
android:layout_height="match_parent"
android:layout_width="1dp"
android:background="?android:attr/listDivider"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Three"/>
....
,您应该在 build.gradle 中添加依赖项:
Space
文档https://developer.android.com/reference/android/support/v4/widget/Space.html
答案 2 :(得分:16)
在您要分隔的视图之间的布局中添加类似的内容:
<View
android:id="@+id/SplitLine_hor1"
android:layout_width="match_parent"
android:layout_height= "2dp"
android:background="@color/gray" />
希望有所帮助:)
答案 3 :(得分:10)
创建一次并在需要的地方使用它是一个好主意。 在styles.xml中添加:
<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>
并将其添加到xml代码中,其中需要行分隔符:
<View style="@style/Divider"/>
最初由toddles_fp回答这个问题:Android Drawing Separator/Divider Line in Layout?
答案 4 :(得分:7)
试试这个
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="?android:attr/listDivider"/>
答案 5 :(得分:3)
<View
android:id="@+id/view"
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#000000" />
答案 6 :(得分:2)
多年后,终于有了在 XML 布局上显示分隔符/分隔符/水平线的正确视图。为 Android 开发 Material 组件的团队发布了 1.5.0-alpha01 版本,其中添加了 MaterialDivider
类。如前所述,这允许向布局添加分隔线。
首先,在您的 build.gradle 中添加以下内容:
implementation 'com.google.android.material:material:1.5.0-alpha01'
然后,您可以在 XML 布局上编写:
<com.google.android.material.divider.MaterialDivider
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
瞧,你有一个分隔线。如果要自定义分隔线的颜色,有一个xml属性:app:dividerColor
。此视图还允许通过样式进行主题化。有关详细信息,您可以查看此 link。
答案 7 :(得分:2)
您可以在视图之间添加此视图以模仿行
<View
android:layout_width="fill_parent"
android:layout_height="2dp"
android:background="#c0c0c0"/>
答案 8 :(得分:1)
试试这个
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/darker_gray"/>
答案 9 :(得分:1)
创建水平线
如果您使用的是TextView,然后要放置一行,则使用View 这样,您可以使用任何提及蓝色,红色或黑色的背景色。
<view
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@android:color/black"></view>
答案 10 :(得分:1)
试试这个适合我
<View
android:layout_width="1dp"
android:layout_height="match_parent"
android:background="@color/tw_composer />
答案 11 :(得分:1)
在您希望组件之间有分隔符的每个父LinearLayout
中,添加android:divider="?android:dividerHorizontal"
或android:divider="?android:dividerVertical
。
根据LinearLayout
的方向选择适当的。
直到我知道,此资源样式是从Android 4.3添加的。
答案 12 :(得分:0)
----&GT;简单的一个
<TextView
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#c0c0c0"
android:id="@+id/your_id"
android:layout_marginTop="160dp" />
答案 13 :(得分:0)
如果您不想仅为下划线使用额外视图。在textView
上添加此样式。
style="?android:listSeparatorTextViewStyle"
就在这里,它会添加额外的属性,如
android:textStyle="bold"
android:textAllCaps="true"
您可以轻松覆盖。
答案 14 :(得分:0)
对我有用的是
<view
android:layout_below="@+id/kaimla_number"
android:layout_width="match_parent"
android:layout_height="3dp"
android:background="@color/golden"></view>
答案 15 :(得分:0)
<view
android:id="@+id/blackLine"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="#000000"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
app:layout_constraintStart_toStartOf="parent"/>
答案 16 :(得分:0)
您可以指定其背景颜色的视图(高度=几个dpi)。 查看真实代码,这里是:
<LinearLayout
android:id="@+id/lineA"
android:layout_width="fill_parent"
android:layout_height="2dp"
android:background="#000000" />
请注意,它可以是任何类型的View
。