启动2个意图,但不是同时启动

时间:2013-08-19 05:04:07

标签: android android-intent

我有一个问题,如果我使用

开始一个意图
try{
    startIntent1(); //Add Contact Intent
} finally {
    startIntent2(); // Contact Picker Intent
}

他们一起开始....有没有办法在我的intent1然后intent2将启动之后?

4 个答案:

答案 0 :(得分:1)

你可以使用最终没有输入的处理程序

int duration = 1500; // milliseconds
new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        startIntent2();
    }
}, duration);

答案 1 :(得分:1)

当您在startIntent2()中保留finally{}时,无论是否发生任何异常,都会触发。

如果您想在startIntent2()之后startIntent1()开始startIntent2(),可以onCreate() startIntent1()方式Thread方法撰写{{1}},您也可以使用{{1} }}

答案 2 :(得分:1)

对于多个意图,您需要以下内容

Intent mIntent1 = new Intent(this, Activity1.class);
mIntent1.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
Intent mIntent2 = new Intent(this, Activity2.class);
Intent[] list = new Intent[2];
list[0] = mIntent1;
list[1] = mIntent2;
startActivities(list);`

最初分享here

答案 3 :(得分:0)

谢谢您的所有解决方案,但我已设法通过使用startActivityOnResult

Intent intent = new Intent(Intent.ACTION_INSERT,
            ContactsContract.Contacts.CONTENT_URI);

        context.startActivityForResult(intent, 6);

然后在ActivityResult

case 6 :
        ContactPicker cp = new ContactPicker(this);
        cp.doLaunchContactPicker(); //launch the intent for contact picker
        break;