クリックしたリストの場所を取得する |
ここではクリックしたリストの場所を取得する方法を確認していきます。
クリックした場所を取得するためには「 onItemClick 」メソッドを使います。 これにより、リストビューの選択された場所を取得でき、その選択項目別に処理を分けることも可能になります。サンプルではクリックしたリスト名をトーストで表示しています。 Listview3Activity.java package goodroid.sample.listview3; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.Toast; public class Listview3Activity extends Activity { /** Called when the activity is first created. */ // リストビューに表示する配列データ String[] list = new String[]{ "list_01", "list_02", "list_03", "list_04", "list_05", "list_06", "list_07", "list_08", "list_09", "list_10" }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // アダプタを用意して配列listを紐付けます。 ListAdapter adapter = (ListAdapter)new ArrayAdapter<String>( this, android.R.layout.simple_list_item_1, list); // main.xmlのListViewにlaをセットします。 ListView lv = (ListView)findViewById(R.id.listview); // ListViewにアダプタを設定する。 lv.setAdapter(adapter); // リストビューのアイテムがクリックされた時に呼び出す。 lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // クリックされたアイテムを取得する。 String item = (String) parent.getItemAtPosition(position); // トーストで表示する Toast.makeText(Listview3Activity.this, item, Toast.LENGTH_LONG).show(); } }); } } main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <ListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout> 実行結果 ![]() 【関連記事】 ・配列のデータをリストビューに表示する ・長押ししたリストの場所を取得する ・折り畳み式リストビューを表示する |
2704 views | コメント:0 | 2012-06-23 |
コメント
|
|
まだこの記事にコメントはありません |