0

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

try{
    startIntent1(); //Add Contact Intent
} finally {
    startIntent2(); // Contact Picker Intent
}

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

4

4 回答 4

1

您可以使用最终未放入的处理程序

int duration = 1500; // milliseconds
new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        startIntent2();
    }
}, duration);
于 2013-08-19T05:08:21.077 回答
1

正如你所坚持的那样,无论是否发生任何异常,它都会触发startIntent2()finally{}

如果您想在可以编写at活动方法startIntent2()之后开始,您也可以使用.startIntent1()startIntent2()onCreate()startIntent1()Thread

于 2013-08-19T05:08:36.113 回答
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);`

最初在这里分享

于 2013-08-19T05:12:39.480 回答
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;
于 2013-08-19T05:31:55.187 回答