Android 使用总体布局提供非滚动标题的ListActivity
我想做一件非常简单的事情:创建一个包含TextView和ListView的LinearLayout 在其中一个例子中,据我所知,这个例子实际上与我的例子相同。但是,如果调用onCreate中的setContentView调用,mine将失败(意外停止;收到RuntimeException)。注释会使列表显示良好,但我没有标题 根据,我必须确保我的ListView的id为“list”。我的是 我错过了什么?下面是main.xml:Android 使用总体布局提供非滚动标题的ListActivity,android,android-layout,Android,Android Layout,我想做一件非常简单的事情:创建一个包含TextView和ListView的LinearLayout 在其中一个例子中,据我所知,这个例子实际上与我的例子相同。但是,如果调用onCreate中的setContentView调用,mine将失败(意外停止;收到RuntimeException)。注释会使列表显示良好,但我没有标题 根据,我必须确保我的ListView的id为“list”。我的是 我错过了什么?下面是main.xml: <?xml version="1.0" encoding="
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:text="Constant Heading" android:id="@+id/heading"
android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ListView android:layout_height="fill_parent" android:id="@+id/list"
android:layout_width="fill_parent" />
</LinearLayout>
我注意到它说“您的内容必须有一个id属性为‘android.R.id.list’的ListView”。就我所见,我是这样做的(main.xml中的android:id=“@+id/list”);请参阅上面的完整文件
谢谢。在
文本视图和列表视图上设置android:layout\u height=“wrap\u content”
,并在列表视图上设置android:layout\u weight=“1”
:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:text="Constant Heading" android:id="@+id/heading"
android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ListView android:layout_height="wrap_content" android:id="@+id/list"
android:layout_width="fill_parent" android:layout_weight="1"/>
</LinearLayout>
这将导致列表视图展开以填充可用区域。在文本视图上设置android:layout\u height=“wrap\u content”
。在列表视图上设置android:layout\u weight=“1”
android:layout\u height=“0dp”
:Aha。我找到了。我有
android:id="@+id/list"
需要的时候
android:id="@android:id/list"
不适用于2.3.1或2.1(都在模拟器中)。如果有帮助的话,问题出现在第236行的ListACtivity.onContentChanged()中。我尝试了这两个答案以及下面的答案,结果都是一样的。在这种情况下,您需要提供错误的完整stacktrace。有关更多详细信息,请参阅我上面的评论;简而言之,这在2.1或2.3.1中不起作用。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:text="Constant Heading" android:id="@+id/heading"
android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ListView android:layout_height="wrap_content" android:id="@+id/list"
android:layout_width="fill_parent" android:layout_weight="1"/>
</LinearLayout>
android:id="@+id/list"
android:id="@android:id/list"