Android: elementy ListView z wieloma klikalnymi przyciskami

mamListView gdzie każdy element na liście zawiera TextView i dwa różne Przyciski. Coś takiego:

ListView
--------------------
[Text]
[Button 1][Button 2]
--------------------
[Text]
[Button 1][Button 2]
--------------------
... (and so on) ...

Dzięki temu kodowi mogę utworzyćOnItemClickListener za cały przedmiot:

listView.setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> list, View view, int position, long id) {
        Log.i(TAG, "onListItemClick: " + position);

        }

    }
});

Nie chcę jednak, aby cały element był klikalny, ale tylko dwa przyciski każdego elementu listy.

Moje pytanie brzmi: jak zaimplementować onClickListener dla tych dwóch przycisków o następujących parametrach:

int button (który przycisk elementu został kliknięty)int position (który jest elementem na liście, na którym kliknięto przycisk)

Aktualizacja: Znalazłem rozwiązanie opisane w mojej odpowiedzi poniżej. Teraz mogę kliknąć / dotknąć przycisk na ekranie dotykowym. Nie mogę jednak ręcznie wybrać go za pomocą trackballa. Zawsze wybiera cały element listy, a stamtąd przechodzi bezpośrednio do następnego elementu listy, ignorując przyciski, mimo że ustawiłem.setFocusable(true) isetClickable(true) dla przycisków wgetView().

Dodałem również ten kod do mojego adaptera listy niestandardowej:

@Override
public boolean  areAllItemsEnabled() {
    return false;           
}

@Override
public boolean isEnabled(int position) {
        return false;
}

To powoduje, że żaden element listy nie jest już w ogóle wybierany. Ale to nie pomogło w wyborze zagnieżdżonych przycisków.

Czy ktoś ma pomysł?

questionAnswers(8)

yourAnswerToTheQuestion