我有两个xml文件。我想在同一个活动中使用这两个xml文件,但是当我尝试使用它时,我收到错误。
1.xml的代码
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_gravity="center_vertical|center_horizontal"
android:background="@drawable/back_image">
<ImageView android:src="@drawable/loading_logo"
android:id="@+id/ImageView01"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="120dip">
</ImageView>
<TextView
android:id="@+id/textView1"
android:text="www.seecycle.com"
android:layout_marginTop="100dip"
android:gravity="center_horizontal|center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ImageView01"
android:textColor="#FFFFFF"
android:textSize="20dip">
</TextView>
</LinearLayout>
2.xml的代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/layout_root">
<TextView android:id="@+id/text"
android:gravity="center_vertical|center_horizontal"
android:layout_marginTop="10dip"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textColor="#FFFFFF"
/>
<TextView android:id="@+id/text1"
android:layout_marginTop="10dip"
android:gravity="center_vertical|center_horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/text"
android:textColor="#FFFFFF"
/>
<TextView android:id="@+id/text2"
android:layout_marginTop="10dip"
android:gravity="center_vertical|center_horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/text1"
android:textColor="#FFFFFF"
/>
<EditText android:id="@+id/text3"
android:layout_width="fill_parent"
android:layout_marginTop="20dip"
android:layout_height="fill_parent"
android:layout_below="@+id/text1"
android:textColor="#000000"
/>
</LinearLayout>
<。pv文件的代码
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.1);
setContentView(R.layout.2);//when i use this it generate an error
}
答案 0 :(得分:0)
如果您需要两种布局但希望将它们分开,那么创建第三种布局文件并导入上述两种布局可能是您的最佳选择。
e.g。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<include
layout="@layout/layout1" />
<include
layout="@layout/layout2" />
</LinearLayout>
答案 1 :(得分:0)
setContentView
并不打算多次调用。顾名思义,它“设置”视图,而不是将其添加到现有视图集。
您需要使用<include layout="@layout/name-of-layout">
更新
将1.xml更改为
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_gravity="center_vertical|center_horizontal"
android:background="@drawable/back_image">
<ImageView android:src="@drawable/loading_logo"
android:id="@+id/ImageView01"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="120dip">
</ImageView>
<TextView
android:id="@+id/textView1"
android:text="www.seecycle.com"
android:layout_marginTop="100dip"
android:gravity="center_horizontal|center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ImageView01"
android:textColor="#FFFFFF"
android:textSize="20dip">
</TextView>
<include layout="@layout/2" />
</LinearLayout>
在活动中,只做
setContentView(R.layout.1);
答案 2 :(得分:0)
你不能用不同的布局调用setContentView()两次。我认为你要找的是ViewFlipper。这可以用于在两个布局之间交替。