您的位置:首页 > 移动开发 > Android开发

Android常用组件(Activity学习之一)

2015-08-27 22:08 731 查看
关于activity本文主要总结一下学习的页面间的跳转,两种方式,以及传递参数和接收返回值。

关于跳转到下一个页面,两个activity间通过Intent来通讯,两种方式:

startActivity();
startActivityForResult();


一、打开下一个页面

Intent intent=new Intent(this, NewActivity.class);
    // 下面是另外3种设置激活组件的方法
    //intent.setClass(this, NewActivity.class);
    //intent.setClassName(this, "com.example.mulactivity.NewActivity");
    //intent.setComponent(new ComponentName(this, NewActivity.class));
        startActivity(intent);


2、将参数传递到下一个页面

传递的方法:

public void OpenNewActivity(View v){
        Intent intent=new Intent(this, NewActivity.class);
        //第一种传值方式
        //intent.putExtra("name", "atm");
        //intent.putExtra("age", 10);

        //第二种传值方式
         Bundle bundle=new Bundle();
         bundle.putString("name", "atm");
         bundle.putInt("age",10);
         intent.putExtras(bundle);

         startActivity(intent);


下一个页面接收的方法:

Intent  intent=getIntent();
        //第一种接收数据的方法
        //String     name=intent.getStringExtra("name");
        //Integer    age=intent.getIntExtra("age", 0);

        //第二中接受数据的方法
        //Bundle bundle = intent.getExtras();
        //String name = bundle.getString("name");
        //int age = bundle.getInt("age");
        //textview.setText(name+"的年龄是:"+age);


3、获得下一个页面关闭时返回的值

重写onActivityResult()方法

public void OpenNewActivity(View v){
        Intent intent=new Intent(this, NewActivity.class);
        startActivityForResult(intent, 88);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        // TODO Auto-generated method stub
        String res = data.getStringExtra("res");
        Toast.makeText(this,res, Toast.LENGTH_LONG).show();
        //super.onActivityResult(requestCode, resultCode, data);

    }


关闭页面时向上一级页面返回值:

public void CloseActivity(View v){
        Intent intent = new Intent();
        intent.putExtra("res", "这是我返回回来的数据");
        setResult(20, intent);
        this.finish();//关闭当前的activity
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: