机器人 - 本地变量TST可能没有被初始化

问题描述:

我的工作code是

@Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) 
    {
        Toast tst;

        if (item.getItemId() == R.id.menuVada) {
            tst = Toast.makeText(Main.this, " Vada ", 2000);

        } else {
            tst = Toast.makeText(Main.this, "Menu Title: " + item.getTitle()
                    + " Menu ID: " + item.getItemId(), 2000);
        }
        tst.setGravity(Gravity.CENTER, 0, 0);
        tst.show();

        return true;

    }

但这code不起作用

but this code not work

@Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) 
    {
        Toast tst;

        if (item.getItemId() == R.id.menuVada) {
            //tst = Toast.makeText(Main.this, " Vada ", 2000);

        } else {
            tst = Toast.makeText(Main.this, "Menu Title: " + item.getTitle()
                    + " Menu ID: " + item.getItemId(), 2000);
        }
        tst.setGravity(Gravity.CENTER, 0, 0);
        tst.show();

        return true;

    }

为什么不工作,我的code?

why not work my code ?

请帮忙。

最好的问候

如果(item.getItemId()== R.id.menuVada)

只是初始化 TST 。如果键,然后检查TST!= NULL 显示敬酒

simply initialize tst to null. And then check if tst!=null show the toast

@Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) 
    {
        Toast tst = null;

        if (item.getItemId() == R.id.menuVada) {
            //tst = Toast.makeText(Main.this, " Vada ", 2000);

        } else {
            tst = Toast.makeText(Main.this, "Menu Title: " + item.getTitle()
                    + " Menu ID: " + item.getItemId(), 2000);
        }
        if(tst!=null){
            tst.setGravity(Gravity.CENTER, 0, 0);
            tst.show();
        }

        return true;

    }