为了账号安全,请及时绑定邮箱和手机立即绑定

关于返回不了值的问题

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode == 1 || requestCode==2){
         String content = data.getStringExtra("data");
         tv.setText(content);
    }
}

老师写的是第二个页面返回值到第一个页面。用的逻辑&&,我发现这样写,根本返回不了。于是我修改成了||就可以正常返回,但是没有搞清楚原理,求知道

正在回答

3 回答

&& 都为true,则返回true
||任一为true,则返回true

这说明有一个是true,再看你写的代码

requestCode == 1 && requestCode==2

你要 requestCode 即等于1又等于2,这当然不可能,返回false。

requestCode == 1 || requestCode==2

requestCode 等于1或2都行,这就对了,返回true,望采纳。

0 回复 有任何疑惑可以回复我~
#1

sorgs 提问者

主要是吧。老师就是这样写的。还成功了
2016-07-14 回复 有任何疑惑可以回复我~

可是我都试了还是不显示!

protected  void onActivityResult(int requestCode, int resultCode, Intent data){

super.onActivityResult(requestCode, resultCode, data);

//resultCode第二个页面返回的标识

if(requestCode==1&&resultCode==2){ //请求码是1返回码是2

String content=data.getStringExtra("data");

showtextView1.setText(content);

}

}


0 回复 有任何疑惑可以回复我~

  super.onActivityResult(requestCoderesultCode, data);

    if(requestCode == 1 &&requestCode==2){

请仔细看看,你就知道为什么返回不了了。

3 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第一门课(入门篇)
  • 参与学习       312585    人
  • 解答问题       4633    个

想快速掌握Android应用开发基础,选择学习这门课程就对了。

进入课程

关于返回不了值的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信