Android: ListView-Elemente mit mehreren anklickbaren Schaltflächen

Ich habe eineListView Dabei enthält jedes Element in der Liste eine Textansicht und zwei verschiedene Schaltflächen. Etwas wie das:

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

Mit diesem Code kann ich einen erstellenOnItemClickListener für den ganzen Artikel:

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

        }

    }
});

Ich möchte jedoch nicht, dass das gesamte Element anklickbar ist, sondern nur die beiden Schaltflächen jedes Listenelements.

Meine Frage ist also, wie ich einen onClickListener für diese beiden Schaltflächen mit den folgenden Parametern implementiere:

int button (welche Schaltfläche des Elements angeklickt wurde)int position (Das ist das Element in der Liste, auf das der Klick auf die Schaltfläche passiert ist.)

Aktualisieren: Ich habe eine Lösung gefunden, wie in meiner Antwort unten beschrieben. Jetzt kann ich über den Touchscreen auf die Schaltfläche klicken / tippen. Ich kann es jedoch nicht manuell mit dem Trackball auswählen. Es wird immer der gesamte Listeneintrag ausgewählt und von dort direkt zum nächsten Listeneintrag weitergeleitet, wobei die Schaltflächen ignoriert werden, obwohl ich festgelegt habe.setFocusable(true) undsetClickable(true) für die Knöpfe ingetView().

Ich habe auch diesen Code zu meinem benutzerdefinierten Listenadapter hinzugefügt:

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

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

Dies führt dazu, dass kein Listenelement mehr auswählbar ist. Es half jedoch nicht, die verschachtelten Schaltflächen auswählbar zu machen.

Hat jemand eine Idee?

Antworten auf die Frage(8)

Ihre Antwort auf die Frage