我是Android的新手并使用以下代码,我正在尝试设置一个默认图像按钮,当点击切换到开启状态直到再次按下或点击屏幕上的任何其他位置,以便弹出窗口关联国家消失了。 这是代码: java代码:
private void setOnclickListeners(View view){
ImageButton button = (ImageButton) view.findViewById(R.id.menu_button);
button.setOnClickListener(this);
}
我想将此代码连接到以下内容,以便触发开关状态:
<ImageButton
android:id="@+id/menu_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@android:color/transparent"
android:paddingRight="8dp"
android:src="@drawable/menu_btn" />
这是xml类的menu_btn代码:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/menu_on"/>
<item android:state_pressed="true" android:drawable="@drawable/menu_on" />
<item android:drawable="@drawable/menu_off" />
</selector>
有任何线索如何去做? Ant帮助赞赏。谢谢!贾斯汀
答案 0 :(得分:1)
您可能需要检查ToggleButton
(或Checkable
的任何子类)以了解您的实施情况,然后将其状态设置为类似的内容,
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:drawable="@drawable/menu_off"/>
<item android:state_checked="true" android:drawable="@drawable/menu_on" />
<item android:drawable="@drawable/menu_off" />
</selector>
然后在您的Java代码上,获取ToggleButton
(或Checkable
)的实例,并根据您的操作更新setChecked
- 方法。