Android ImageButton 按下状态不改变
Android ImageButton Pressed State Doesn't Change
我正在以编程方式设置 ImageButton 的按下状态。
问题是当我按下它时,状态根本没有改变。我尝试使用 state_focused
和其他一些按钮,但按钮根本没有改变。你知道为什么我的 ImageButton 在按下时没有改变它的图像吗?
_pauseButton = new ImageButton(_context);
StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[] {},
getResources().getDrawable(R.drawable.pause));
stateListDrawable.addState(new int[] {android.R.attr.state_pressed},
getResources().getDrawable(R.drawable.pausepressed));
_pauseButton.setImageDrawable(stateListDrawable);
默认状态图像确实显示正确,但按下时,没有任何变化。
尝试添加这一行:
_pauseButton.setPressed(boolean)
如果没有帮助,请尝试阅读这篇文章:
Android : How to update the selector(StateListDrawable) programmatically
我必须最后设置默认状态。
StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[] {android.R.attr.state_pressed},
getResources().getDrawable(R.drawable.pausepressed));
stateListDrawable.addState(new int[] {},
getResources().getDrawable(R.drawable.pause));
看起来像是 android 中的错误,我已经设置了一个报告:
我正在以编程方式设置 ImageButton 的按下状态。
问题是当我按下它时,状态根本没有改变。我尝试使用 state_focused
和其他一些按钮,但按钮根本没有改变。你知道为什么我的 ImageButton 在按下时没有改变它的图像吗?
_pauseButton = new ImageButton(_context);
StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[] {},
getResources().getDrawable(R.drawable.pause));
stateListDrawable.addState(new int[] {android.R.attr.state_pressed},
getResources().getDrawable(R.drawable.pausepressed));
_pauseButton.setImageDrawable(stateListDrawable);
默认状态图像确实显示正确,但按下时,没有任何变化。
尝试添加这一行:
_pauseButton.setPressed(boolean)
如果没有帮助,请尝试阅读这篇文章: Android : How to update the selector(StateListDrawable) programmatically
我必须最后设置默认状态。
StateListDrawable stateListDrawable = new StateListDrawable();
stateListDrawable.addState(new int[] {android.R.attr.state_pressed},
getResources().getDrawable(R.drawable.pausepressed));
stateListDrawable.addState(new int[] {},
getResources().getDrawable(R.drawable.pause));
看起来像是 android 中的错误,我已经设置了一个报告: