我可以更改操纵栏项目上的图标

Red*_*ris 2 android android-actionbar

我不是要改变主图标,只是一个菜单项的图标.

图标基本上显示我当时是否正在录制.我点击使用时更改图标

item.setIcon(R.drawable.recordstart);
Run Code Online (Sandbox Code Playgroud)

在这种方法中.

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);
    }
}
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何在这种方法之外做到这一点.

Red*_*ris 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;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后在整个班级中你都可以使用

example.setIcon("Your Image");
Run Code Online (Sandbox Code Playgroud)