在网上看到很多资料,并且去实现了,都是通过建立一个intend然后用startActivity将分享列表列出来。
请问怎么实现将列表通过菜单表现出来?这个菜单是自己建立的吗?那么怎么实现点击菜单后跳转到分享的activity页面?
之外,吐槽一句,我使用
Intent intent=new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
去建立一个分享列表时没有问题的。
但是如果使用了
Intent.createChooser(intent, "1111111111");
之后,就无法建立了。
使用
public boolean hasApplication(Intent intent){
PackageManager packageManager = getPackageManager();
//查询是否有该Intent的Activity
List activities = packageManager.queryIntentActivities(intent, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT);
//activities里面不为空就有,否则就没有
return activities.size() > 0 ? true : false;
}
这个函数去检测的时候,在模拟器不会出现什么问题,在我HTC手机上会出现返回的activities个数为0。
在click里面相应内容是
Intent intent=new Intent(Intent.ACTION_SEND);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "content");
intent.putExtra(Intent.EXTRA_TEXT, "222222");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Intent tmp = Intent.createChooser(intent, "1111111111");
if(hasApplication(tmp))
startActivity(tmp);
没问题吧?