Ich habe einen eigenen Adapter programmiert und über ListView zu meiner ListActivity hinzugefügt. Der Grund, warum ich einen eigenen Adapter geschrieben habe, ist, dass ich einige Layoutänderungen an den Listeneinträgen vornehmen musste. In jedem Eintrag der Liste habe ich 3 TextViews.
%Vor%
Als nächstes habe ich eine "onListItemClick-Methode" implementiert. Danach habe ich einen onListItemLongClick - Listener mit dem folgenden Code implementiert:
in onCreate der Aktivität, die ich hinzugefügt habe:
%Vor%Dann habe ich die folgende Methode hinzugefügt:
%Vor%wobei "id" der Index des Elements in der Liste ist. Ich möchte nun den Text der texview mit dem id="myNr dieses ListItems bekommen. Gibt es eine Möglichkeit, diesen Text zu bekommen?
nehmen Sie Bezug auf die Textansicht, wenn Sie einen BaseAdapter wie
erweitern %Vor%Ich habe keine der oben genannten Lösungen gefunden. Als Alternative können Sie:
%Vor%Ja, das habe ich mir auch gedacht. Aber wenn ich dies implementiere, bekomme ich nur den Text des ersten TextView in der Liste. Das bedeutet, dass ich den Text des gewünschten TextViews erhalten kann, aber es ist immer der Text des ersten Listeneintrags. Gibt es keine Möglichkeit den longClickedList-Eintrag zu adressieren?
Danke für Ihre Hilfe, aber ich fürchte, es funktioniert immer noch nicht. Wenn ich die von Ihnen vorgeschlagene Zeile hinzufüge, wird "getItemAtPosition" unterstrichen und es heißt: - Die Methode getItemAtPosition (int) ist für den Typ View -
nicht definiertEr schlägt vor, die Ansicht auf eine AdapterView zu übertragen, so dass es wie folgt aussieht:
%Vor%Wenn ich das ausführe und einen langen Klick auf das Objekt mache, erhalte ich eine "ClassCastException"
Ich hatte eine ArrayList von ArrayLists als meine Datenquelle für den CustomAdapter, also verwende ich
%Vor%