安卓一个Activity加载多个layout布局文件

博客后 附上工程文件

效果图:

安卓一个Activity加载多个layout布局文件

 看下工程结构:

安卓一个Activity加载多个layout布局文件

MainActivity.java文件

package com.example.pro225;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {
	private Button btn1;
	private Button btn2;
	private Button btnback1;
	private Button btnback2;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		this.setTitle(R.string.who); 
		 btn1=(Button)findViewById(R.id.buttonlayout_1);
		 btn1.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				setContentView(R.layout.layout_1);
			    btnback1=(Button)findViewById(R.id.buttonback1);
				btnback1.setOnClickListener(new OnClickListener(){

					@Override
					public void onClick(View v) {
						// TODO Auto-generated method stub
						Intent i=new Intent(MainActivity.this,MainActivity.class);
						startActivity(i);
						//setContentView(R.layout.activity_main);
					}
		
				});
			}
			 
		 });
		 btn2=(Button)findViewById(R.id.buttonlayout_2);
		 btn2.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				setContentView(R.layout.layout_2);
				btnback2=(Button)findViewById(R.id.buttonback2);
				btnback2.setOnClickListener(new OnClickListener(){

					@Override
					public void onClick(View v) {
						// TODO Auto-generated method stub
						Intent i=new Intent(MainActivity.this,MainActivity.class);
						startActivity(i);
						//setContentView(R.layout.activity_main);
					}
					
				});
			}
			 
		 });
	}
	
	
}

 

还有一个有趣的东西可以改进,我们可以设置控件的可见不可见,在代码中十分有用

添加的代码用红色标注出来了

安卓一个Activity加载多个layout布局文件

下载链接:pro225.rar