如何动态更改 actionModeCloseDrawable 图标?

How to change actionModeCloseDrawable icon dynamically?

我正在如下设置 actionModeCloseDrawable 图标

<item name="actionModeCloseDrawable">@drawable/ic_actionbar_back</item>

但我想在特定事件中以编程方式更改它。

有什么办法吗?

我试过定义两种样式并在运行时更改它,但这也没有用。

之前

代码

 new Handler(Looper.myLooper()).postDelayed(new Runnable() {
        @Override
        public void run() {
            ((AppCompatImageView)getActivity().findViewById(R.id.action_mode_close_button)).setImageDrawable(getContext().getResources().getDrawable(R.drawable.ic_person_white_24dp));
        }
    },5000);

之后

假设与状态:

  1. 您正在使用支持操作模式。
  2. 在我的示例中,ActionBar 是 Fragment 的一部分,因此 getActivity().findViewById(int resId)
  3. 我已经用Handler模拟了你说的事件的延迟。

希望这对您有所帮助。