getExtras()是不是得到intent传来的信息的意思android开发

getExtras()是不是得到intent传来的信息的意思android开发,第1张

getExtras()返回的是Bundle的对象,我来给楼主写个小例子,你一看就懂了:

现在我们要从MainActivity跳转到SecondActivity,并且携带一个参数过去,那么MainActivity里跳转界面的代码这样写:

Intent intent=new Intent(this,SecondActivityclass);

Bundle bundle=new Bundle();

bundleputString("test", "楼主采纳我吧");

intentputExtras(bundle);

startActivity(intent);

可以看到new出了一个bundle,在bundle里面放置了一个key为"test",值为"楼主采纳我吧"的键值对,然后把bundle放到intent里,intent携带了一个bundle对象,就开始跳转界面了,那么在SecondActivity里接收参数,就应该这么写:

String params=thisgetIntent()getExtras()getString("test");

这时候params的值就是“楼主采纳我吧”。

requestCode是用来在主页面回收子页面的消息用的在主页面中重写:protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == YOUR_REQUEST_CODE) {//这里填写你的requestcode if (resultCode == RESULT_OK) { //你要执行的任务 } } } }在子页面重写 public void onBackPressed(){// 按下返回键的事件 superonBackPressed(); setResultCode(RESULT_OK);}如果你想从主页面向子页面传数据 ,请给intent里面添加数据即可android:主页面startactivityforresult(intent,requestCode)跳转后子页面如何得到requestCode这个值

你确定有没有再传过去?如果这个方法放在onCreate()中的话就是不行的,因为它只执行一下,你按返回后这个方法是不会再次执行的,你把这个方法写在onResume()中看一下,这个方法是每一次回到activity都会执行一次的你可以学一下关于activity的生活周期函数方法

String字符串不能用==号判断是否相等,==号比较的是对象地址

String str1 = new String("a");

String str2 = new String("a");

Systemoutprintln(str1==str2);

结果

java中判断对象相等应该使用equal方法,这个是Object的方法,需要重写

还是上面的代码

输出Systemoutprintln(str1equals(str2));

结果为true

以上就是关于getExtras()是不是得到intent传来的信息的意思android开发全部的内容,包括:getExtras()是不是得到intent传来的信息的意思android开发、android:主页面startactivityforresult(intent,requestCode)跳转后子页面如何得到requestCode这个值、android中activity多次通过intent传值的问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存