Android中用intent启动另一个activity

一个程序中很有可能不止一个activity,那么就需要实现不同activity之间的转化。不同activity之间的转化可以用intent实现。
intent是一个public class,它是一个启动行为的抽象描述,它有许多的作用,最明显的作用就是用来启动activity,broadcastreceiver和service。
比如要想在main_activity中启动activity2和activity3,在main-activity的代码如下:

public class MainActivity extends AppCompatActivity {

    Button btn1,btn2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn1=(Button) findViewById(R.id.button);
        btn2=(Button) findViewById(R.id.button2);
        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent1=new Intent();
                intent1.setClass(com.example.dell.intenttest.MainActivity.this,activity2.class);
                startActivity(intent1);
            }
        });
        btn2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent2=new Intent(com.example.dell.intenttest.MainActivity.this,activity3.class);
                startActivity(intent2);
            }
        });
    }
}

其中btn1和btn2是两个按钮,点击以后要跳转至activity2和activity3,需要传递的参数第一个是当前activity的context,第二个是要进入的acticity类。上面的两种写法(两个button各代表一种)是等价的。
要注意,btn的findviewbyid一定要写在绑定布局以后。
这样就可以启动别的activity了。

另外,android手机上的返回按钮就是返回上一个activity,如果是在Lunch activity中按返回按钮则会返回桌面,application进入后台。

intent的官方文档:
https://developer.android.com/reference/android/content/Intent.html

你可能感兴趣的:(JAVA与Andriod)