0

在我的应用程序中,我有一个双标签活动,每个标签对应一个片段。在我的一个选项卡中,我提示用户选择一个选项,确认后应该切换选项卡。所以我用于创建对话框和切换选项卡的代码如下所示:

new AlertDialog.Builder(getActivity())
    .setMessage("Login now with email?")
    .setTitle("Prompt")
    .setPositiveButton("Yes", 
                       new DialogInterface.OnClickListener(){ 
                                 public void onClick(DialogInterface dialog, int which){
                                           getActivity().getActionBar().setSelectedNagivationItem(0)})
    .show();

但是,当我运行它时,我得到一个

java.lang.RuntimeException: Unable to instantiate activity 
ComponentInfo com.package.app/com.package.app.activityname}: 
java.lang.ClassCastException: com.package.app.activityname cannot be cast to 
android.app.Activity

仅当我从对话框中调用该方法时才会发生此错误,如果我在对话框不在前面时运行它,它会起作用。对话框关闭后,我也尝试在 OnResume() 中执行此操作,但它给了我同样的错误。

4

1 回答 1

0

仅供参考,您是否尝试过使用另一种方法来更改警报对话框中的选项卡?:) 例如:

        TabHost tabHost =  (TabHost) findViewById(android.R.id.YOURTABHOST);
      tabHost.setCurrentTab(0); 
于 2014-02-27T20:51:45.500 回答