新建一个Activity通过按钮打开它,再通过按钮关闭它
首先需要创建一个供打开和关闭的Activity,先在scr下当前项目的包中创建一个新类Activity1,
并选择让其继承自Activity类,如下图所示:
之后配置AndroidMainifest.xml文件处,配置之后AndroidMainfest.xml代码中多出一行
<activity android:name="Activity1" ></activity>
创建好之后在其中重写一个onCreate()方法,并且绑定到Activity1
package cn.hx.HelloWorld; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; //新建一个类Activity1让它继承自Activity //要想运行此类就要配置到AndroidMainifest.xml文件处 public class Activity1 extends Activity { private Button btn_CloseAty1; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity1); //绑定到Activity1 } }
给先前的Activity_main.xml中拉一个按钮,id改成btnStartActivity1,在MainActivity.java中声明一个按钮private Button btnStartAty1;
然后通过findViewById找到btnStartActivity1,之后再给按钮设置一个事件监听,点击按钮执行打开Activity1的操作,如下图:
1 public class MainActivity extends ActionBarActivity { 2 3 private Button btnStartAty1; 4 @Override 5 protected void onCreate(Bundle savedInstanceState) { 6 super.onCreate(savedInstanceState); 7 setContentView(R.layout.activity_main); 8 9 btnStartAty1=(Button) findViewById(R.id.btnStartAty1); 10 //此处报错Type mismatch: cannot convert from View to Button 11 //是因为findViewById返回View类型,所以需强制装换成Button类型 12 btnStartAty1.setOnClickListener(new View.OnClickListener() { 13 //为button按钮设置一个事件监听 14 @Override 15 public void onClick(View v) { 16 // TODO Auto-generated method stub 17 Intent i=new Intent(MainActivity.this, Activity1.class); 18 startActivity(i); 19 } 20 }); 21 }
同理想要关闭Activity要在Activity.xml中增加一个关闭按钮,点击之后关闭,并在Acticity1.java中完成Button的声明,事件的监听
package cn.hx.HelloWorld; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.Button; //新建一个类Activity1让它继承自Activity //要想运行此类就要配置到AndroidMainifest.xml文件处 public class Activity1 extends Activity { private Button btn_CloseAty1; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.activity1); //绑定到Activity1 btn_CloseAty1=(Button) findViewById(R.id.btn_CloseAty1); btn_CloseAty1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub finish(); //finish()是执行关闭Activity操作的方法 } }); } }