Android ImageButton颜色未更改onPressed(),onFocus()
我想在按下、聚焦和单击时更改按钮颜色,但我想我一定是做错了什么,我的代码不起作用。有人能给点建议吗?谢谢 这是我在drawable中的Android ImageButton颜色未更改onPressed(),onFocus(),android,imagebutton,android-ui,android-drawable,Android,Imagebutton,Android Ui,Android Drawable,我想在按下、聚焦和单击时更改按钮颜色,但我想我一定是做错了什么,我的代码不起作用。有人能给点建议吗?谢谢 这是我在drawable中的soundbtn.xml: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/sound_onpress_m
soundbtn.xml
:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@drawable/sound_onpress_mdp" /> <!-- pressed -->
<item android:state_focused="true"
android:drawable="@drawable/sound_onpress_mdp" /> <!-- focused -->
<item android:drawable="@drawable/sound" /> <!-- default -->
</selector>
这是我的Java代码:
private ImageButton btnSound;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_game);
btnSound =(ImageButton) findViewById(R.id.imageSound);
btnSound.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
btnSound.setBackgroundResource(R.drawable.soundbtn);
}
});
}
设法除去
android:src="@drawable/sound"
及
你只需要
android:background="@drawable/soundbtn"
因为它会调用“已按下”或“已聚焦”等具有目标可拖动项的项。尝试删除
android:src="@drawable/sound"
及
你只需要
android:background="@drawable/soundbtn"
因为它会调用“pressed”或“focused”之类的项目,这些项目具有目标drawable