切换表单小部件 - GridView Android

Switch form Widget - GridView Android

我添加了 GridviewImageviewTextView。它工作得很好。现在我想添加 on/off 按钮。我选择开关。它也工作正常。我需要设置 click/checkchanged 动作。但是我遇到了一个问题。

首先我尝试使用 onCheckChanged Listener 它正在工作。但问题是当我尝试滚动 GridView checkchanged Listener called.

所以

我尝试另一种选择onclick监听器。它也在工作。这里的问题是当我滑动开关时没有触发点击动作。

我尝试另一种选择。那就是onTouch听众。它不工作。原因是当我触摸多次调用的动作时。

如何handle switch in GridView?请任何人帮助我。

例如,您可以使用形式 checkBox :

CheckBox chk = (CheckBox) findViewById(etc.....);
chk.setOnClickLictenetr(new oclickLictener(){
    @Override
    public void onclick(View view){
       CheckBox chekbox = (CheckBox) view;
for example this is your structure===> item.done = chekbox.isChecked();
    }
});

如果您滚动,您将得到检查。

我找到了禁用开关的解决方案。 有点混乱。但解决方案是

第 1 步:

实施 setOnTouchListener

例如:

switchButton.setOnTouchListener(new View.OnTouchListener() {
  @Override
  public boolean onTouch(View v, MotionEvent event) {
    return event.getActionMasked() == MotionEvent.ACTION_MOVE;
  }
});

第 2 步:

第一步完成后,我们就可以自由实现onclickListener了。