列表视图不显示任何内容并隐藏数据
listview shows nothing and hide data
我想在列表中水平显示七个文本视图和两个按钮。如果添加更多控件然后它不显示任何内容,我的列表适用于五个文本视图。我的代码是正确的 我试图更改 xml 中的所有内容,但我无法在屏幕上看到任何内容。请帮助我如何以正确的格式使用它。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- Third header line and column headings -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#A1E9FF">
<TextView android:id="@+id/column_header1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
<TextView android:id="@+id/column_header2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
</LinearLayout>
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="#b5b5b5"
android:dividerHeight="2dp">
</ListView>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/plan_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="21dp"
android:layout_toRightOf="@+id/Plan_no"
android:text="plan date "
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/button2"
android:text="Visited"
android:textColor="#000" />
<TextView
android:id="@+id/ff_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/morn_even"
android:text="ff code"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/speciality"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/ff_code"
android:layout_marginLeft="22dp"
android:layout_toRightOf="@+id/ff_code"
android:text="speciality"
android:textColor="#000"
android:textSize="15dp"/>
<TextView
android:id="@+id/mon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/plan_date"
android:text="mon"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/Plan_no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="17dp"
android:text="plan no"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/doc_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="26dp"
android:layout_toRightOf="@+id/mon"
android:text="doc_code"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView1"
android:text="Not Visited"
android:textColor="#000" />
</RelativeLayout>
我认为您的问题可能是因为您试图显示的项目多于屏幕中 space 的项目。为了抵消这种影响,您可以使用 HorizontalScrollView 让您水平滚动以查看所有视图。
此外,orientation 属性在 RelativeLayout 上不起作用,我建议您使用 LinearLayout。
<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/plan_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="21dp"
android:layout_toRightOf="@+id/Plan_no"
android:text="plan date "
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/button2"
android:text="Visited"
android:textColor="#000" />
<TextView
android:id="@+id/ff_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/morn_even"
android:text="ff code"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/speciality"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/ff_code"
android:layout_marginLeft="22dp"
android:layout_toRightOf="@+id/ff_code"
android:text="speciality"
android:textColor="#000"
android:textSize="15dp"/>
<TextView
android:id="@+id/mon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/plan_date"
android:text="mon"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/Plan_no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="17dp"
android:text="plan no"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/doc_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="26dp"
android:layout_toRightOf="@+id/mon"
android:text="doc_code"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView1"
android:text="Not Visited"
android:textColor="#000" />
</LinearLayout>
</HorizontalScrollView>
PS:我懒得删除 RelativeLayout 特定属性,例如:alignTop、alignParentRight 等。所以请随意删除这些属性。
正如 Torque203 指出的那样,orientation
属性对于 RelativeLayout
无效。
您的 RelativeLayout
未按预期工作的另一个原因是 顺序很重要 当您定义您的 child 观看次数。
当 RelativeLayout
膨胀时,XML 从上到下读取,并且新的 child 视图只能指定为相对于已定义的其他 child 视图在它之前。
考虑你的第二个 TextView:
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
您指定此视图是 "toRightOf" 视图 doc_code
,但是 RelativeLayout
还不知道有关此 doc_code
视图的任何信息,因为您不知道直到接近 XML 的末尾才定义它。
虽然你并不孤单。很多人在刚开始玩 RelativeLayout
.
时会误解这一点
要理解的关键是 RelativeLayout
将仅实施锚定到位置已定义和固定的视图的相对位置规则。
例如考虑一个新的空RelativeLayout
:
- 我们为其添加一个新的 child 视图
A
。
对于第一个child,我们只能指定相对于它的位置规则parent。
如果我们不定义任何相对于它的位置规则parent,它会默认放在左上角。
- 我们添加了一个新的 child 视图
B
。
对于这个 child 我们可以指定相对于它 parent 或相对于现有视图 A
.
的位置规则
我们不能指定任何相对于尚未定义的视图 C
的位置规则。
举一个现实世界的例子,假设我正在让人们排队合影,首先我告诉吉姆站在镜头的中央。如果我然后说 "Ok Anita, you stand to the right of Liz" 你要么只是用有趣的眼光看着我,要么说 "But I don't know where Liz is meant to be standing yet!".
我想在列表中水平显示七个文本视图和两个按钮。如果添加更多控件然后它不显示任何内容,我的列表适用于五个文本视图。我的代码是正确的 我试图更改 xml 中的所有内容,但我无法在屏幕上看到任何内容。请帮助我如何以正确的格式使用它。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- Third header line and column headings -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:orientation="horizontal"
android:background="#A1E9FF">
<TextView android:id="@+id/column_header1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
<TextView android:id="@+id/column_header2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
/>
</LinearLayout>
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:divider="#b5b5b5"
android:dividerHeight="2dp">
</ListView>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/plan_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="21dp"
android:layout_toRightOf="@+id/Plan_no"
android:text="plan date "
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/button2"
android:text="Visited"
android:textColor="#000" />
<TextView
android:id="@+id/ff_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/morn_even"
android:text="ff code"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/speciality"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/ff_code"
android:layout_marginLeft="22dp"
android:layout_toRightOf="@+id/ff_code"
android:text="speciality"
android:textColor="#000"
android:textSize="15dp"/>
<TextView
android:id="@+id/mon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/plan_date"
android:text="mon"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/Plan_no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="17dp"
android:text="plan no"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/doc_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="26dp"
android:layout_toRightOf="@+id/mon"
android:text="doc_code"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView1"
android:text="Not Visited"
android:textColor="#000" />
</RelativeLayout>
我认为您的问题可能是因为您试图显示的项目多于屏幕中 space 的项目。为了抵消这种影响,您可以使用 HorizontalScrollView 让您水平滚动以查看所有视图。
此外,orientation 属性在 RelativeLayout 上不起作用,我建议您使用 LinearLayout。
<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<TextView
android:id="@+id/plan_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="21dp"
android:layout_toRightOf="@+id/Plan_no"
android:text="plan date "
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/button2"
android:text="Visited"
android:textColor="#000" />
<TextView
android:id="@+id/ff_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/morn_even"
android:text="ff code"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/speciality"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/ff_code"
android:layout_marginLeft="22dp"
android:layout_toRightOf="@+id/ff_code"
android:text="speciality"
android:textColor="#000"
android:textSize="15dp"/>
<TextView
android:id="@+id/mon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/plan_date"
android:text="mon"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/Plan_no"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/textView1"
android:layout_marginLeft="17dp"
android:text="plan no"
android:textColor="#000"
android:textSize="15dp" />
<TextView
android:id="@+id/doc_code"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="26dp"
android:layout_toRightOf="@+id/mon"
android:text="doc_code"
android:textColor="#000"
android:textSize="15dp" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView1"
android:text="Not Visited"
android:textColor="#000" />
</LinearLayout>
</HorizontalScrollView>
PS:我懒得删除 RelativeLayout 特定属性,例如:alignTop、alignParentRight 等。所以请随意删除这些属性。
正如 Torque203 指出的那样,orientation
属性对于 RelativeLayout
无效。
您的 RelativeLayout
未按预期工作的另一个原因是 顺序很重要 当您定义您的 child 观看次数。
当 RelativeLayout
膨胀时,XML 从上到下读取,并且新的 child 视图只能指定为相对于已定义的其他 child 视图在它之前。
考虑你的第二个 TextView:
<TextView
android:id="@+id/morn_even"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_marginLeft="31dp"
android:layout_toRightOf="@+id/doc_code"
android:text="morn_even"
android:textColor="#000"
android:textSize="15dp" />
您指定此视图是 "toRightOf" 视图 doc_code
,但是 RelativeLayout
还不知道有关此 doc_code
视图的任何信息,因为您不知道直到接近 XML 的末尾才定义它。
虽然你并不孤单。很多人在刚开始玩 RelativeLayout
.
要理解的关键是 RelativeLayout
将仅实施锚定到位置已定义和固定的视图的相对位置规则。
例如考虑一个新的空RelativeLayout
:
- 我们为其添加一个新的 child 视图
A
。
对于第一个child,我们只能指定相对于它的位置规则parent。
如果我们不定义任何相对于它的位置规则parent,它会默认放在左上角。
- 我们添加了一个新的 child 视图
B
。
对于这个 child 我们可以指定相对于它 parent 或相对于现有视图 A
.
的位置规则
我们不能指定任何相对于尚未定义的视图 C
的位置规则。
举一个现实世界的例子,假设我正在让人们排队合影,首先我告诉吉姆站在镜头的中央。如果我然后说 "Ok Anita, you stand to the right of Liz" 你要么只是用有趣的眼光看着我,要么说 "But I don't know where Liz is meant to be standing yet!".