android用action.View显示图片问题

两个Activity,一个叫A,一个叫B。
A使用按钮发出一个隐式Intent,如下:
Intent i = new Intent();
i.setAction("android.intent.action.View");
i.setType("image/png");
在menifest文件中设置B的intent-filter,如下:





运行程序,按下按钮,会出现对话框,让选择是用这个程序还是系统自带viewPicture.
选择后会报空指针错误。(因为没有指定图片资源)
然后我在A的Intent中指定图片资源的Uri:
i.setData("android:resource://包名/drawable/图片名")
在B中解析Intent并显示在ImageView中:
Uri uri = getIntent().getData();
ImageView view = (ImageView)findViewById(R.id.show);
view.setImageUri(uri);
再运行程序,就报错:No activity found to handle the intent.
这是为什么??<<<<<<<<<
然后我在Intent中指定Component:
i.setClass(包名,类名)
再执行程序,图片居然在B中显示出来了。
这是为什么??不是没有activity能接收intent吗???

5个回答







<action android:name="android.intent.action.View"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="image/png"/>

首先,你的uri设置有问题,应该是"content://media/...“,至于你最后为啥能显示出来,我也很好奇,按道理说,你的uri设置有问题,会不会是你布局里本身就设置了图片资源进去。

这样写的意义在那方面?代码就那么点,这有点猜谜语的感觉。。。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐