问题是,如果您想在其他布局中包含任何布局,您只需执行以下操作:
<include layout="@layout/your_layout"/>
但是,如果您想将android的核心布局中的一个包含为simple_list_item_2
,那将如何完成?
更新1 -
使用给出的解决方案:
<include layout="@android:layout/simple_list_item_2"/>
现在它让我有另一个问题。
我有一个调用另一个ListActivity的活动。如果我们使用手机或平板电脑,我需要进行管理,这样,如果我们在手机上只会显示ListActivity,但如果我们在平板电脑上,则会显示ListActivity和DetailFragment。
在我的ListActivity中,我这样做:
public PlacesCursorAdapter(Context context, Cursor c) {
super(context, R.layout.THE_LAYOUT, c, 0);
mInflater = LayoutInflater.from(context);
}
@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
View view = mInflater.inflate(R.layout.THE_LAYOUT, parent, false);
//...
return view;
}
//...
这就是我提出第一个问题的原因。我需要使用simple_list_item_2
来包含列表的元素。但是,如果我们使用手机或平板电脑,我必须只显示列表,列表和详细信息。
我不知道如何管理这个,所以我做的第一件事是创建一个只包含手机simple_list_item_2
的布局,并创建另一个同名的布局,但是保持在layout-large文件夹中,该文件夹还包含simple_list_item_2
,但也有一个framelayout来设置DetailFragment。
此布局称为list_layout,其内部为simple_list_item_2
:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<include
android:id="@+id/list_simple"
layout="@android:layout/simple_list_item_2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
</LinearLayout>
现在,我的怀疑是......我可以这样做吗?在上面的java代码片段中,可以对内部包含的布局进行make引用而不是整个布局吗?
答案 0 :(得分:1)
试试这个
<include
layout="@android:layout/simple_list_item_1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>