2

メインの Icon を変更しようとしているのではなく、メニュー項目のアイコンだけです。

アイコンは基本的に、その瞬間に録音しているかどうかを示します。タップしたときにアイコンを変更します

item.setIcon(R.drawable.recordstart);

この方法で。

public boolean onOptionsItemSelected(MenuItem item) {
    ...
    } else if (item.getItemId() == R.id.ab_menu_VRecord) {

        if(recording)
                    {
                       item.setIcon(R.drawable.recordstop);
                    }else{
                       item.setIcon(R.drawable.recordstart);
                    }

        }

        return true;
    } else {
        return super.onOptionsItemSelected(item);
    }
}

このメソッドの外でこれを行う方法を知っている人は誰でも。

4

3 に答える 3

5

例:

class {

    public MenuItem example;

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.actionbar, menu);       
        example = menu.findItem(R.id.ab_menu_exampleview);
        return true;
    }
}

その後、クラス全体で使用できます

example.setIcon("Your Image");
于 2012-08-06T16:34:13.583 に答える