読者です 読者をやめる 読者になる 読者になる

Androidプログラミングブログ

Androidプログラミングを勉強していく中でわかったことをメモする

【Androidプログラミング入門 #016】ListView(リストビュー)のアイテムをタップしたときの処理を実装する

はじめに

ListView(リストビュー)のアイテムをタップしたときの処理を実装する。

ListViewを使ったことがない場合はこちらを一読。 android.swift-studying.com

この後、実装していく前に、こちらからサンプルプロジェクトをダウンロードしてください。
SampleListView.zip - Google ドライブ

ListView(リストビュー)のアイテムをタップしたときの処理は
ListViewでsetOnItemClickListenerで実装します。
アイテムをタップするとトーストが表示されます。

1. setOnItemClickListenerを実装

MainActivity.javaを開き、onCreateメソッドの一番下にsetOnItemClickListenerを実装します。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
                    .setAction("Action", null).show();
        }
    });

    // ListViewの読み込み
    ListView listView = (ListView)findViewById(R.id.listView);

    // Adapterの作成
    ListAdapter adapter = new ArrayAdapter<String>(
            this,
            android.R.layout.simple_list_item_1,
            persons
    );

    // Adapterの設定
    listView.setAdapter(adapter);

    // ListViewのアイテムタップ時の処理
    listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){
        public void onItemClick(AdapterView<?> parent, View view, int position, long id){
            ListView listView = (ListView)parent;
            String item = (String)listView.getItemAtPosition(position);

            Toast.makeText(MainActivity.this, item, Toast.LENGTH_LONG).show();
        }
    });
}

2. 実行

実行します。

f:id:fjswkun:20151101185912p:plain

うまくいかなかった方はこちらからダウンロードして確認してみてください。

SampleListView.zip - Google ドライブ

参考情報

参考

Androidアプリ開発逆引きレシピ (PROGRAMMER’S RECiPE)

Androidアプリ開発逆引きレシピ (PROGRAMMER’S RECiPE)

開発用デバイス

Androidの勉強をはじめた人は知っているようにエミュレーターはちょー遅い。
開発用に安いAndroidを買えば、勉強がはかどります!
iPhoneと比較すると安いので買ったほうがいいと思います。

おすすめデバイス

勉強用に使うだけなので価格が高い最新デバイスは必要ないと思います。
最新のデバイスは一人前のAndroidプログラマーになったら購入を検討しましょう。

nexus5 16GBASUS Nexus7 ( 2013 ) TABLET

その他に探すなら↓から。
Android nexus5を勉強用に購入