如何通过共享选项在imageview中将我选择的图像从库设置为我的应用程序。

时间:2016-01-06 07:14:08

标签: android image gallery share

我正在构建一个应用程序,我可以在其中将我的照片从库分享到我的应用程序,这与“PINTEREST'”的概念相同。但它通过登录网关进行,如果用户已登录,则会将所选图像设置为imageview或登录以继续相同。共享选项直接来自电话库的共享菜单,就像我们在列表视图中看到的那样,当我们点击图库中的共享选项,即邮件,蓝牙等时。

我想知道,如何通过图库中的“共享”选项登录后,如何将所选图像设置为我的应用程序的图像视图。

1 个答案:

答案 0 :(得分:1)

我得到了答案:) 这可以通过使用Intent来完成:

Intent intent = getIntent();
// Get the action of the intent
String action = intent.getAction();
// Get the type of intent (Text or Image)
String type = intent.getType();
// When Intent's action is 'ACTION+SEND' and Tyoe is not null
if (Intent.ACTION_SEND.equals(action) && type != null) {
     if (type.startsWith("image/")) { // When type is 'image/*'
           handleSendImage(intent); // Handle single image being sent
       }
}
private void handleSendImage(Intent intent) {
    // Get the image URI from intent
    Uri imageUri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM);
    // When image URI is not null
    if (imageUri != null) {
        // Update UI to reflect image being shared
        view_news.setImageURI(imageUri);
        news.setVisibility(View.GONE);
    } else{
        Toast.makeText(this, "Error occured, URI is invalid", Toast.LENGTH_LONG).show();
    }
}

这解决了我从图库中获取图像并在图像视图中显示它的问题,就像在'pInterest'应用程序中一样。 谢谢:)