禁用 Android Switch 的默认点击操作

har*_*ger 2 java android switch-statement android-layout

我正在尝试做什么

我正在尝试使用 Android 的 Switch 元素从 Facebook 和 LinkedIn 的 API 登录或注销用户,如图所示。

在此输入图像描述

我的问题

目前,切换会在用户单击时自动触发。我希望他们只有在 API 确认用户的登录状态已成功更改时才按照命令移动。

我的尝试

我尝试过使用myLoginSwitch.setClickable(false);但这似乎没有任何影响。

我试图避免什么

我想这可以通过定制的开关元素来完成,但是出于明显的原因,我试图避免该解决方案!

任何想法将不胜感激!

har*_*ger 5

感谢您的所有想法和答案!

禁用该按钮并不是我热衷的事情,遗憾的onClick()是使用不足以覆盖默认操作。

然而 onTouch 却完美地做到了这一点!如果有人在做类似的事情,这就是函数:

myLoginSwitch.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View view, MotionEvent motionEvent) {
        myLoginSwitch.setClickable(false);
        myLoginLogoutFunc();
        return false;
    }
});
Run Code Online (Sandbox Code Playgroud)