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