我有Button
:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:enabled="false" />
如果用户在禁用时点击它,我想抛出Toast
。但这不起作用:
@Override
public void onClick(View v) {
Button b = (Button) v;
if (b.isEnabled()) {
} else {
Toast.makeText(getActivity(),
"Please Select a Student",
Toast.LENGTH_SHORT).show();
}
}
});
我做错了什么?
答案 0 :(得分:6)
视图在禁用时不会收到onClick
回调。您应该在按钮单击逻辑中添加一个是否选择学生的检查,而不是禁用该按钮。
答案 1 :(得分:0)
实际上,已停用的Button
无法收听任何事件,但您可以通过扩展Button
类来自定义您自己的Button
,以制定您自己的禁用定义。
答案 2 :(得分:0)
禁用按钮时,您无法收听事件。使用ImageButton中的状态创建一个选择器,以更加直观地显示启用和禁用状态之间的差异。当Button被禁用时,您无法监听事件。使用状态或使用带选择器文件的ImageButton来放置dif