2015-04-13 4 views
0

У меня есть Gridview с Imageview, TextView. Он работает отлично. Теперь я хочу добавить кнопку on/off. Я выбираю Switch. Он также отлично работает. Мне нужно установить действие click/checkchanged. Но я столкнулся с одной проблемой.Тип переключателя Widget - GridView Android

Сначала я пробовал с onCheckChanged Слушатель Он работает. Но проблема была в том, что я пытаюсь прокрутить GridView checkchanged Listener.

Так

Стараюсь другой вариант onclick Listener. Он также работает. Здесь проблема заключалась в том, что я не запускал действие щелчка переключателя кликов.

Я пробую другой вариант. То есть onTouch Слушатель. Это не работает. Причина была в том, что я нажимаю действие, называемое несколько раз.

Как сделать handle switch in GridView? Пожалуйста, помогите мне.

ответ

0

Я нашел решение, которое отключает переключатель. Немного путают. Но решение было

Шаг 1:

Реализовать setOnTouchListener

например:

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

Шаг 2:

После шага 1. Мы свободны реализовать onclickListener.

0

Например, вы можете использовать форму 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(); 
    } 
}); 

Если вы прокрутки, вы будете иметь ваш чек.

+0

Это будет работать, о чем я упоминаю в своем вопросе. Но здесь проблема заключается в том, когда я переключаю переключатель, нет действия (onclick), вызванного – Amsheer

+0

Ок. Вы можете увидеть эту ссылку, возможно, помочь вам: [Нажмите здесь] (https://github.com/codepath/android_guides/wiki/Handling-Configuration-Changes) – JIM

+0

Какова связь между моим вопросом и этой ссылкой. Я не понимаю, что вы имеете в виду – Amsheer

Смежные вопросы