我在我的MainActivity中放置了两个ListFragment。
这是ListFragment xml文件:fragment1.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" >
<ListView
android:id="@id/android:list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:drawSelectorOnTop="false" />
</LinearLayout>
我的问题是,为什么我必须在这里使用android:id =“@ id / android:list”?当我使用例如@ + id / frag_list时,程序崩溃并出现错误“膨胀类片段”。
答案 0 :(得分:2)
ListActivity具有默认布局,该布局由屏幕中央的单个全屏列表组成。但是,如果您愿意,可以通过在setContentView()
中使用onCreate()
设置自己的视图布局来自定义屏幕布局。为此,您自己的视图必须包含一个ID为"@android:id/list"
的ListView对象(如果它在代码中则列出)。当你的班级延伸ListFragment
时也一样。
有关详情,请查看文档
http://developer.android.com/reference/android/app/ListActivity.html
您可以扩展Fragment而不是ListFragment。使用ListView进行自定义布局。然后,您可以为列表视图提供任何ID。