ListView in Android-handler für das klicken auf Element
Ich habe eine activity in Android verwendet ein ListView. Wenn ich auf ein Element in der ListView, ich möchte in der Lage sein, zu bestimmen, welches Element geklickt wurde. Ich habe den folgenden code:
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.listr);
//setupDB();
//populateList3();
ListView lv = (ListView) findViewById(R.id.ListView01);
lv.setClickable(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Toast.makeText(ListRecords.this,"Clicked!", Toast.LENGTH_LONG).show();
}
});
}
Meine layout.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/Linear03lr"
android:layout_width="fill_parent"
android:orientation="vertical"
android:gravity="center"
android:layout_height="fill_parent">
<!--Put form controls here-->
<ListView android:id="@+id/ListView01"
android:layout_width="wrap_content"
android:layout_height="400dp" />
<Button
android:id="@+id/previousbutton"
android:gravity="center_horizontal"
android:layout_width = "fill_parent"
android:layout_height = "fill_parent"
android:text="Previous Menu"/>
</LinearLayout>
Was bin ich hier, um der Lage sein, um Sie abzufangen Klicks auf die Listview?
- Wie kann ich akzeptieren, Antworten?
InformationsquelleAutor eljainc | 2011-02-18
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnte es einfacher sein zu verwenden ListActivity, dann Sie einfach haben, um über-ride
onListItemClick
.adb logcat
um herauszufinden, welche exception geworfen wurde.Vorausgesetzt, Sie sind dem füllen der listview (jetzt gibt es nichts in es), das angeklickte Element die position angegeben ist, in die 'position' - argument von Ihr onitemclick-Methode.
Während der Entwicklung, ich schlage vor, die Protokollierung von Informationen mit
log.v("text1","text2")
und überprüfen Sie die DDMS-Konsole, um zu sehen, was die Anwendung tatsächlich ausgeführt wird.Wie es aussieht, haben die clickListener richtig eingerichtet. Mit diesem code bekommen Sie das Toast-popup, wenn Sie auf ein Element in der Liste? Der int-position-variable, die übergeben bekommt, um die
onClick()
Methode können Sie sehen, welche Artikel in der Liste angeklickt wurde.