Android Intent Activity之间传递数据

Android Intent Activity之间传递数据,第1张

概述向下传递FirstActivity→ThirdActivityFirstActivitybutton_1.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){//数据样式Stringdata="HelloNext!"; 向下传递

FirstActivity → ThirdActivity

FirstActivity
button_1.setonClickListener(new VIEw.OnClickListener() {            @OverrIDe            public voID onClick(VIEw v) {                //数据样式                String data = "Hello Next!";                //显式Intent                Intent intent = new Intent(FirstActivity.this,ThirdActivity.class);                //以键值对的方式存入数据                intent.putExtra("FirstActivity_data",data);                //启动Intent                startActivity(intent);            }        });
ThirdActivity
//获取启动此Activity的IntentIntent intent = getIntent();//根据传递的数据类型选择相应的Extra方法,传入对应的键,获取值String data = intent.getStringExtra("FirstActivity_data");//输出日志查看Log.d(TAG, "onCreate: "+data);
向上传递

ThirdActivity → FirstActivity

FirstActivity
private static final String TAG = "FirstActivity";    //重写onActivityResult方法,接收返回数据    //requestCode:启动ThirdActivity的请求码    //resultCode:ThirdActivity返回活动FirstActivity的返回码    //data:带有返回数据的intent    @OverrIDeprotected voID onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {    super.onActivityResult(requestCode, resultCode, data);    //匹配请求码    switch (requestCode) {        case 1:            //匹配返回码            if (resultCode == RESulT_OK) {                //取出数据                String return_data = data.getStringExtra("ThirdActivity_data");                //输出日志查看                Log.d(TAG, "onActivityResult: "+return_data);            }        default:    }}protected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.first_layout);    button button_1 = findVIEwByID(R.ID.button_1);    button_1.setonClickListener(new VIEw.OnClickListener() {        public voID onClick(VIEw v) {            //显式 Intent            Intent intent = new Intent(FirstActivity.this,ThirdActivity.class);            //启动Intent,并设置请求码为1            startActivityForResult(intent,1);        }    });}
ThirdActivity按键
@OverrIDeprotected voID onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentVIEw(R.layout.third_layout);    button button_1 = findVIEwByID(R.ID.third_button_1);    button_1.setonClickListener(new VIEw.OnClickListener() {    @OverrIDe    	public voID onClick(VIEw v) {            //数据样式            String data = "Hello My Is ThirdActivity.onCreate.onClick";            //创建一个空的intent            Intent intent = new Intent();            //将数据按键值对的方式存储于intent            intent.putExtra("ThirdActivity_data",data);            //为该intent设置返回码            setResult(RESulT_OK,intent);            //销毁该Activity            finish();        }    });}
Back
public voID onBackpressed() {    String data = "Hello My Is ThirdActivity.onBackpressed";    Intent intent = new Intent();    intent.putExtra("ThirdActivity_data",data);    setResult(RESulT_OK,intent);    finish();}
总结

以上是内存溢出为你收集整理的Android Intent Activity之间传递数据全部内容,希望文章能够帮你解决Android Intent Activity之间传递数据所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1062948.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存