如何检查意图陈述的活动

时间:2014-08-25 11:07:32

标签: android android-intent comparison

我正在开展一些活动(A1A2A3),在活动A3开始之前,我希望显示一个AlertDialog myDialog

void startActivityCallback(Intent intent) {
    if(intent.getComponent().getClassName().equals(A3.class.getName())){
        new AlertDialog.Builder(this)
        .setTitle("Title Title")
        .setMessage("Message Message")
        .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) { 
                startActivity(intent);
            }
        })
        .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) { 
                callNegaitveMethod();
            }
        })
        .setIcon(android.R.drawable.ic_dialog_alert)
        .show();
    else {
        startActivity(intent);
    }
}

还有其他办法吗?我不喜欢按名字比较课程:

if(intent.getComponent().getClassName().equals(A3.class.getName())){

1 个答案:

答案 0 :(得分:0)

您可以使用putExtra在意图中添加布尔标记。 然后使用getBooleanExtra将其检索回来,并根据此标志的值决定是否显示对话框。