重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Android中怎么实现组件交互,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
创新互联长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为云岩企业提供专业的做网站、成都做网站,云岩网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。
Android应用中,由一些基本元素构成,但如何交互呢?
Activity->Activity:
Activity之间通过Intent进行交互,可以通过直接类名直接跳转,也可以通过Intent Filter进行匹配分析,然后找到对应的Activity进行切换,这是一种松散的藕合。
Internal Activity:
在Activity 内部,View,Button 等UI组件通过设定Listener对UI事件进行监听处理。
Progress->Progress:
可以采用Braodcast Intent的方式进行与目标组件进行交互,也可以用一般的Intent。比如 Activity 调另一个Activity ,可以使用startActivity (new Intent(xx.this, yyy.class);方式。
Any -> BroadcastReceiver
由发起者发送一个PendingIntent, BroadcastReceiver的onReceive(Context context, Intent intent)被调用
Any-> ContentProvider
调用者使用 getContentResolver()方式取得 AndroidManifest.xml中配置的 ContentProvider 然后通过URi方式对其中的目标进行操作
Intent intent = getIntent(); if (intent.getData() == null) intent.setData(CONTENT_URI); Cursor cur = getContentResolver().query(getIntent().getData(), PROJECTION, null, null, null); Any-> Service
由发起者 context.startService(new Intent(context, XXX.class))这种方式可以调用,也可以对 注册过的服务采用服务名称的调用方式。
程序由生到死:
选中程序文件映像,起动模块起动进程,并发送Intent到这个进程,这个进程通过Intent Filter匹配到一个Activity, 运行这个Activity的onCreate.当用户中止程序,或者由Android程序管理器由于内存等原理,按该进程优先级别,Kill掉该进程。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。