我正在创建一个可单击的自定义视图来替换android.widget.Switch
(Switch
),使用onDraw
而不是额外的Drawable
。当我以前使用Switch
时,如果父项被禁用,Switch
也是不可点击的,但是当我迁移到我的自定义视图时,当父项被禁用时,它仍然是可点击的。我如何知道是否应该禁用/忽略点击?
自定义视图父启用x1c 0d1x
自定义视图父项禁用(仍然可单击!)
Switch
父禁用(不可点击)
我的代码
public class MySwitch extends View {
public boolean onTouchEvent(MotionEvent motionEvent) {
if (isClickable() && isEnabled()) {
//do something
}
}
protected void onDraw(Canvas canvas) {
//draw track and thumb
}
}
1条答案
按热度按时间bihw5rsg1#
您可以尝试将父节点验证为
ViewGroup
,如下所示。