需求:
在主佈局中顯示子佈局
step1:
創建一個xml佈局文件,設置好您想設置的佈局內容
step2:
在mainactivity中聲明一個控件,之後會顯示在那邊。我選擇了linerlayout。
step3:
聲明view並顯示
下面是java文件
public class MainActivity extends AppCompatActivity {
Button button;
private LinearLayout frameSwitch;//顯示控件
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=findViewById(R.id.button);
frameSwitch = findViewById(R.id.frameSwitch);//聲明
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
View pictureView = getLayoutInflater().inflate(R.layout.verify, null);
frameSwitch.addView(pictureView, ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
// frameSwitch.removeAllViews();//這句話是清除自佈局,這裏不需要
}
});
}
}
下面是xml文件
主佈局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="200dp"
android:layout_height="match_parent">
<Button
android:layout_width="150dp"
android:layout_height="100dp"
android:id="@+id/button"
android:text="按鈕"/>
</LinearLayout>
<LinearLayout
android:id="@+id/frameSwitch"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="10"
android:orientation="horizontal">
</LinearLayout>
</LinearLayout>
子佈局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/text"
android:textSize="52dp"
android:text="姓名:"
/>
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/editText"
android:textSize="52dp"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/text2"
android:textSize="52dp"
android:text="密碼:"
/>
<EditText
android:layout_width="200dp"
android:layout_height="wrap_content"
android:id="@+id/editText2"
android:textSize="52dp"
/>
</LinearLayout>
<Button
android:layout_width="200dp"
android:layout_height="50dp"
android:layout_gravity="center_horizontal"
android:text="按鈕"
/>
</LinearLayout>
效果圖:(點擊按鈕顯示佈局)