首页 文章

单击ActivityGroup中的微调器时出现BadTokenException

提问于
浏览
1

我现在搜索了两天的解决方案,但我找不到有用的东西 .

我有一个TabHost有4个选项卡,更改可以将视图从第一个选项卡更改为另一个我有一个微调器 . 这个微调器初始化正确,但我无法点击它,因为如果我这样做,我得到一个BadTokenException

07-28 13:52:59.446: E/AndroidRuntime(692): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@405496d8 is not valid; is your activity running?

现在代码:

viewToLoad = LayoutInflater.from(this).inflate(R.layout.projekt_daten, null);
        this.setContentView(viewToLoad);

要理解我的函数调用的一些变量

fuelleSpinner("SELECT _id, name FROM kunden", R.id.s_kundenauswahl);

所以我填补了微调器:

private void fuelleSpinner(String selection, int spinnerID){

    Cursor spinnerCursor = mDatenbank.rawQuery(selection, null);
    spinner = (Spinner) findViewById(spinnerID);
    String[] data = new String[spinnerCursor.getCount()];

    for(int i = 0; i  adapter = 
        new ArrayAdapter(getParent(), android.R.layout.simple_spinner_item, data);

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
}

我也试过这个:

ArrayAdapter adapter = ArrayAdapter.createFromResource(
                getParent(), R.array.array_name, android.R.layout.simple_spinner_item);

两种方式都正确初始化微调器,但如果我点击微调器,应用程序崩溃 .

1 回答

  • 0

    试试这个代码 .

    View viewToLoad = LayoutInflater.from(this.getParent()).inflate(R.layout.XXXX, null);
            this.setContentView(viewToLoad);
    

相关问题