Ich habe mich umgesehen, und es könnte sein, weil ich nicht sicher bin, was ich suche, aber ich kann nicht herausfinden, wie ich etwas tun soll, nehme ich an sollte mit Android ziemlich einfach sein.So wechseln Sie die Aktivität mit artikelspezifischen Daten gesendet
Ich habe eine Reihe von Daten auf dem Bildschirm anzuzeigen. Diese Daten sind eine Klasse, die einen Datenbankschlüssel, einen Namen und ein Bild enthält.
Ich zeige diese Daten derzeit als ImageView und TextView. Ich durchlaufe das Array und füge eine neue Zeile zu einem TableLayout hinzu, das das Bild und den Text enthält.
Ich möchte, dass sowohl das Bild als auch der Text anklickbar sind und zu einer neuen Aktivität wechseln.
Diese neue Aktivität muss den Datenbankschlüssel der Zeile kennen, auf die geklickt wurde, um die korrekten Daten anzuzeigen.
Hier ist, was ich bisher:
private void fillSuggestionTable(TableLayout tabSuggestions, Suggestion[] arrToAdd)
{
for(int i = 0; i < arrToAdd.length; i++)
{
/* Create a new row to be added. */
TableRow trSuggestion = new TableRow(this);
trSuggestion.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
/* Create objects for the row-content. */
ImageView imgDisplayPicture = new ImageView(this);
ImageHandler.loadBitmap(arrToAdd[i].strImageURL, imgDisplayPicture);
imgDisplayPicture.setLayoutParams(new LayoutParams(50,50));
TextView txtArtistName = new TextView(this);
txtArtistName.setText(arrToAdd[i].strName);
txtArtistName.setTextColor(Color.parseColor("#000000"));
/* Add data to row. */
trSuggestion.addView(imgDisplayPicture);
trSuggestion.addView(txtArtistName);
/* Add row to TableLayout. */
tabSuggestions.addView(trSuggestion, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
}
}
Nein, der einzige Grund, warum ich Tableview verwende, war für mich damals am sinnvollsten. Ich vermute ID wäre die ID des Itme in der Liste? Wenn ich also die ListView fülle, solange ich die ID für das Listenelement auf den Datenbankschlüssel setze, kann ich die ID dann einfach abrufen? –
Es ist sogar einfacher als das - erweitern Sie einfach CursorAdapter wie unten beschrieben, und wenn Sie Ihren Cursor von der Datenbank übergeben, vorausgesetzt, Sie benannten Ihre SQL-Spalten wie er will, legt er die ID-Eigenschaft jeder Ansicht in der ListView für Sie. http://droiddevelop.tumblr.com/post/12322798864/part-136-making-a-custom-cursor-adapter – JRaymond