java– 意图问题,返回值(Android)

java– 意图问题,返回值(Android),第1张

概述我有一个使用intent打开另一个类的应用程序:privatevoidcreateRepository(){Intentj=newIntent(this,Repository.class);startActivityForResult(j,ACTIVITY_CREATE);}在Repository.class中,我们有onActivityResult方法:publicvoidonActivi

我有一个使用intent打开另一个类的应用程序:

private voID createRepository(){        Intent j = new Intent(this, Repository.class);        startActivityForResult(j, ACTIVITY_CREATE);    }

在Repository.class中,我们有onActivityResult方法:

public voID onActivityResult(int reqCode, int resultCode, Intent data) {      super.onActivityResult(reqCode, resultCode, data);      switch (reqCode) {        case (PICK_CONTACT) :          if (resultCode == Activity.RESulT_OK) {            Uri contactData = data.getData();            c =  managedquery(contactData, null, null, null, null);            if (c.movetoFirst()) {              //String name = c.getString(c.getColumnIndexOrThrow(People.name));              num = c.getString(c.getColumnIndexOrThrow(People.NUMBER));            }              }            break;      }      finish();    }

我不知道如何将num的值返回给第一个类(创建Repository.class).
谢谢您的帮助.
迈克尔

解决方法:

我认为你的方向混乱了.

在Repository类中,您必须在调用finish之前使用setResult().对于其他数据,您可以putExtra()数据.

例如,在onCreate()函数中设置结果.

在您的调用类(启动存储库的那个)中,您覆盖onActivityResult(int requestCode,int resultCode,Intent data)并使用data.getBundleExtra()获取数据.

针对Intent和Activity的机器人参考具有良好的描述,并且样本还包含ReceiveResult和SendResult样本.

总结

以上是内存溢出为你收集整理的java – 意图问题,返回值(Android)全部内容,希望文章能够帮你解决java – 意图问题,返回值(Android)所遇到的程序开发问题。

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

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

原文地址: http://outofmemory.cn/web/1118587.html

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

发表评论

登录后才能评论

评论列表(0条)

保存