位置: 编程技术 - 正文

activity通信(activity与fragment的通信)

编辑:rootadmin

推荐整理分享activity通信(activity与fragment的通信),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:activity context,android activity与fragment通信,activity通信产生的问题,activity fragment通信,activity间通信,activity fragment通信,activity通信产生的问题,activity通信产生的问题,内容如对您有帮助,希望把文章链接给更多的朋友!

上节说到,Activity是什么;这次来了解了解Activity通信相关内容。

都知道,人与人交流产生许多不可预知的美。因为交流,信息得意传递;因为交流,任务得以完成;因为交流,生活才有滋有味。

废话少说,进入正题。

1.What is Intent?

在同一个应用程序中往往会使用Intent对象来指定一个Activity,intent 的汉语解释为意图、目的,为何是它,我也不知,但总要有一个表示,大家记住就好了。这个Intent在指定一个Activity后可以通过startActivity或者startActivityForResult来启动这个Activity。除此之外,它还可以调用其它应用程序中的Activity。功能不得不说很强大。

2.Can you showan example?

$1封装一个Activity

Intent myIntent= new Intent(this,YourClass.class);

$2传&#;

myIntent.putExtra(“name”,”jack”);

myIntent.putExtra(“no”,””);

myIntent.putExtra(“data”,jsonObject.toString);

$3启动

startActivity(myIntent);

$4新Activity怎样获取

Buddle bundle =getIntent.getExtras();

StringBuffer s=new StringBuffer();

s.append(bundle.getString(“name”));

s.append(bundle.getString(“no”));

s.append (bundle.getString(“data”))

3.信息传递是双向的,所以有去有回,那信息怎么回呢?

$1封装Activity方式与上面一样

$2启动

startActivityForResult(myIntent,R.layout.deal); //R.layout.deal为请求代码

$3接收

activity通信(activity与fragment的通信)

当关闭YourClass后,系统会调用Activity类的onActivityResult事件来获得deal的返回&#;。所以,需要在Main类中覆盖onActivityResult方法来获得deal的返回&#;。

@override

protected voidonActivityRequest(int requestCode, int resultCode, Intent data){

Switch(requestCode){

case R.layout.deal:

if(resultCode==){

doSomething();

}else if(resultCode==){

doSomething();

}

}

}

PS:有人可能要问resultCode从何而来?

这是startActivityForResult方法返回数据的机制决定的,当系统关闭当前Activity时会将Activity里面的&#;(比如说文本框的)保存在Intent对象中

getIntent().putExtra(“something”,someValue);

setResult(,getIntent());

从这可以看到返回&#;是带有结果的,那可想而知返回&#;就不会带结果了

SetResult();

至此Activity间的通信基本了解清楚。

4.前面也说过Intent也可以调用其他应用程序中的Activity,那这里也举个例子吧

直接拨号的例子

Intent call =new Intent(Intent.ACTION_CALL,URI.parse(“tel:”&#;));

startActivity(call);

当然Intent还有其他许多功能,欲知详情,建议各位查看android此类相关文档,这是最直接的学习方法,当然也枯燥,但收获良多,不过鉴于google的访问问题,大家还是翻墙吧。

下次将展开android消息提示的相关用法

android轻量级开源缓存框架——ASimpleCache(ACache)源码分析 转载请注明出处:

MAC中设置android adb环境变量 1.找到androidsdk的本地路径,adb命令在platform-tool下面,记为XXXX我的路径是(/Applications/eclipse/android-sdk-mac_x/platform-tools)2.打开终端输入touch.bash_profilevi.bash_pro

Activity的生命周期和创建按方式 activity生命周期分三个阶段:1,oncreate:activity第一次创建的时候调用ondestroy:销毁时调用2,onstart:可见时调用onstop:不可见时调用3,onResume:有按钮可以被点

本文链接地址:https://www.jiuchutong.com/biancheng/383228.html 转载请保留说明!

上一篇:Android 四种点击事件(android点击事件onclick用法)

下一篇:Eclipse Hover 提示过快(eclipse显示错误提示)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络