ClickView TextView внутри GridView в Android

1

У меня есть GridView в android, и я заполняю его TextView, созданным внутри переопределенного метода getView класса BaseAdapter. Первоначально метод onClick созданного TextView не реализован, но выполняет чувство нажатия. Но когда я реализую onClick в TextView, он выполняет действия onClick, но чувство нажатия не исчезает.

Есть ли способ, которым я могу ощущать нажатие TextView даже при использовании метода onClick?

Спасибо

Обновление hi people, return false не работал, он показывает ошибку компиляции. То, что я пытаюсь сделать, это что-то вроде этого: внутри BaseAdapter для заполнения GridView

public View getView(int position, View convertView, ViewGroup parent) {
    TextView v;
    if(convertView == null){
      v = new TextView();
    }else{ 
        v = (TextView) convertView;
    }
}

В этот момент TextView может быть сфокусирован и имеет смысл щелчка. Но если я реализую onClickListener, как это, я могу выполнить действие, но ощущение нажатого вида (или сфокусированного) исчезло:

 view.setOnClickListener(new View.OnClickListener() {
        @Override
           public void onClick(View v) {
              deleteHour(mapDays.get(day));
           }
        });

Я вижу, что в GridView есть событие onClick, а другое - в TextView. Я думаю, что когда я реализую метод onClick в TextView, он отключает onClick в GridView.

Может быть, вопрос в том, как сделать TextView clickable изменением состояния TextView при его нажатии? У вас есть идеи?

Большое спасибо за ответы!

  • 0
    Вы имеете в виду, что хотите, чтобы текстовое представление все еще имело фокус?
  • 0
    Я не получаю popint, но, возможно, вам нужно только вернуть false в конце onClickListener? Это должно разрешить выполнение других слушателей
Показать ещё 1 комментарий
Теги:
textview
gridview
clickable

1 ответ

4

Я сделал это!

То, что я нашел, - это переопределить setOnItemClickListener из GridView следующим образом:

gridview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int position, long id) {
}

Я надеюсь, что это поможет любому, у кого есть такая же проблема!

Спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню