无法从我的主要活动以外的活动显示Toast

时间:2010-08-12 08:59:23

标签: java android android-activity toast

我有一个名为main的Activity。如果我打电话

Toast.makeText(this, "Hello World from main", Toast.LENGTH_SHORT);

这很好用。但是,对于我的应用程序中的每个其他活动,我都无法显示Toast。没有例外,日志中没有任何内容,但我没有看到Toast。

我的主要活动是通过选项菜单开始另一个活动:

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {

    case R.id.main_menu_entry:

        Intent infolist = new Intent(this, infolist.class);
        startActivityForResult(infolist, R.layout.infolist);

        return true;
    default:
        return super.onOptionsItemSelected(item); 
    }
}

在我的infolist活动中,我有另一个选项菜单,应显示Toast。

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
    case R.id.infolist_menu_entry:

                    // this Toast is never shown.
        Toast.makeText(this, "Hello World from infolist", Toast.LENGTH_Short);          
        return true;

    default:
        return super.onOptionsItemSelected(item); 
    }
}

任何可能导致此问题的想法? 我使用最新的SDK与Min SDK Version = 3和1.5 Emulator。

2 个答案:

答案 0 :(得分:9)

我会说,经典错误:
你忘记了Toast.show()方法;)

答案 1 :(得分:0)

你最后错过了show()方法。

Toast.makeText(this, "Hello World from infolist", Toast.LENGTH_Short).show();