今回はリストビュー(ListView)について書いていこうとおもいます。
リストビューは複数の項目から、ある項目を選ぶ際に使用します。
まずは、プロジェクトの作成を行います。
[簡単Androidアプリ] プロジェクトの作成からHello Worldテキストの出力まで
Layout
レイアウトの作成を行います。
palette -> コンポジット -> ListView をアプリケーション画面にドラッグします。
Coding
コードを入力していきます。
SampleMain.java
package com.sample.brogger;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
public class SampleMain extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // レイアウトの指定
        setContentView(R.layout.activity_sample_main);
        // オブジェクトの作成
        ListView lv = (ListView) findViewById(R.id.listView1);
        // リストビュー表示する文字列を設定します
        String[] lvStr = {
                "OS","CPU","メモリ",
                "ディスプレイ","ハードディスク","SSD",
                "Office","GPU","キーボード",
                "マウス","スピーカー"
        };
        // リストビューに表示する文字列を、格納するアダプターの作成
        ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, lvStr);
        // リストビューにアダプターを設定
        lv.setAdapter(adapter);
        // リストビューの項目をクリックした時の処理をするリスナ
        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView parent, View view, int position, long id) {
                // TODO 自動生成されたメソッド・スタブ
                ListView tmpListView = (ListView) parent;
                // クリックされた項目の文字列を取得
                String itemStr = (String)tmpListView.getItemAtPosition(position);
                // トーストに取得した文字列を表示
                Toast.makeText(SampleMain.this, itemStr + "が選択されました", Toast.LENGTH_LONG).show();
            }
        });
    }
}
  
Execution
では実際に実行してみましょう。
項目をクリックすると・・・
トーストが表示されます。
前記事:[簡単Androidアプリ] エディットテキスト(EditText)を使ってみよう!!
次記事:[簡単Androidアプリ] リストビュー(ListView)に日付を表示してみよう!!「ArrayAdapterクラスの拡張」
次記事:[簡単Androidアプリ] リストビュー(ListView)に日付を表示してみよう!!「ArrayAdapterクラスの拡張」



0 コメント: