android - 调用 startActivity 方法时的 returnActivity 事件

标签 android android-intent android-activity

我有一个 Activity,我用 startActivity 启动了一个应用程序选择器。

问题:在用户选择首选邮件应用程序之前,我如何才能完成父 Activity ?

 Uri uri = Uri.parse("mailto:" + "someone@mail.com")
                .buildUpon()
                .appendQueryParameter("subject", "subject")
                .appendQueryParameter("body", "body")
                .build();

 Intent emailIntent = new Intent(Intent.ACTION_SENDTO, uri);
 startActivity(Intent.createChooser(emailIntent, "chooser Title"));

 finish();

最佳答案

如前所述in this post ,您可以使用 IntentPicker 而不是 IntentChooser

Intent intentPick = new Intent();
intentPick.setAction(Intent.ACTION_PICK_ACTIVITY);
intentPick.putExtra(Intent.EXTRA_TITLE, "Launch using");
intentPick.putExtra(Intent.EXTRA_INTENT, emailIntent);
this.startActivityForResult(intentPick, REQUEST_CODE_MY_PICK);
// You have just started a picker activity, 

然后您可以通过在 Activity 中添加以下回调方法来监听 Intent 选择的结果:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
    if (requestCode == REQUEST_CODE_MY_PICK) {
         // start the activity the user picked from the list
         startActivity(data);

         //you can finish() your activity here
    }
}

关于android - 调用 startActivity 方法时的 returnActivity 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40801547/

相关文章:

android - 多线程此示例代码 :

android - 元素在移动设备上的大小调整不均

Android:动态选择启动 Activity 并不总是有效

android - 将搜索数据传递给 Searchable Activity

android - 您如何将信息传递给非 Activity 类?

Android 将 ParseObject 发送到另一个 Activity

android - 如何在android中制作椭圆形按钮?

android - 碰撞检测和碰撞响应

android - 如何添加分享到 Instagram 快拍的选项?

android - 文件保存 Intent ,如共享 Intent Android/iOS react-native