永发信息网

Android 两个Activity之间怎样使用Uri传递图片,怎样获取图片的Uri,怎样通过Uri得到图片

答案:2  悬赏:40  手机版
解决时间 2021-01-27 08:40
  • 提问者网友:辞取
  • 2021-01-26 12:12
Android 两个Activity之间怎样使用Uri传递图片,怎样获取图片的Uri,怎样通过Uri得到图片
最佳答案
  • 五星知识达人网友:荒野風
  • 2021-01-26 12:42
Activity之间传递数据是通过Intent来传递的。
Intent是一种运行时绑定(run-time binding)机制,它能在程序运行过程中连接两个不同的组件。通过Intent,你的程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来完成请求。比如,有一个Activity希望打开网页浏览器查看某一网页的内容,那么这个Activity只需要发出WEB_SEARCH_ACTION给Android,Android就会根据Intent的请求内容,查询各组件注册时声明的IntentFilter,找到网页浏览器的Activity来浏览网页。 



Android的三个基本组件——Activity,Service和Broadcast Receiver——都是通过Intent机制激活的,不同类型的组件有不同的传递Intent方式:


1. 要激活一个新的Activity,或者让一个现有的Activity做新的操作,可以通过调用Context.startActivity()或者Activity.startActivityForResult()方法。 

2. 要启动一个新的Service,或者向一个已有的Service传递新的指令,调用Context.startService()方法或者调用Context.bindService()方法将调用此方法的上下文对象与Service绑定。
3. Context.sendBroadcast()、Context.sendOrderBroadcast()、Context.sendStickBroadcast()这三个方法可以发送Broadcast Intent。发送之后,所有已注册的并且拥有与之相匹配IntentFilter的BroadcastReceiver就会被激活。 
4. Intent一旦发出,Android都会准确找到相匹配的一个或多个Activity,Service或者BroadcastReceiver作响应。所以,不同类型的Intent消息不会出现重叠,即Broadcast的Intent消息只会发送给BroadcastReceiver,而决不会发送给Activity或者Service。由startActivity()传递的消息也只会发给Activity,由startService()传递的Intent只会发送给Service。
全部回答
  • 1楼网友:青尢
  • 2021-01-26 13:08
图片类: class image implements serializable{ private string url; private bitmap bitmap; } 传递: image image = new image(); image.seturl(url); image.setbitmap(bitmap); intent.putextra("image", image); 获取 image image = intent.getserializableextra("image"); string url = image.geturl(); bitmap bitmap =image.getbitmap();
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯