戌印-INUJIRUSHI- (Androidあれこれ)

Androidのプログラミングをメインにしてます。記事に貼られたソースコードはダブルクリックすることで行番号をはずしてコピーすることができます。

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
10

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

一覧表示:ListView

ListView はレイアウト上に一覧を表示するウィジェットです。

API Reference: ListView, ListAdapter, ArrayAdapter

■ 画面イメージ -----------------------------------------------
android_ListView.png

■ ListView 注意事項 ------------------------------------------
ListView に表示する項目は ListAdapter と呼ばれるインターフェースを実装したクラスに設定しなくてはいけません。
なので、XMLのみで一覧を表示することはできません。

このサンプルでは文字列を表示するだけなので ArrayAdapter クラスを使用します。
第二引数で指定するリソースIDはListViewに表示する1項目のレイアウトXMLになります。

ここでは、Androidの標準のレイアウトである android.R.layout.simple_list_item_1 を指定しています。
なお、独自に定義したレイアウトXMLを指定することもできます。
※独自のレイアウトを指定した場合、 ListAdapter も独自で実装する必要があります。

■ XML + ソースコードで定義 -----------------------------------
XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>

ソースコード
package jp.inujirushi.sample.activity;

import jp.inujirushi.sample.R;
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

public class ListViewActivity extends Activity {
/** アクティビティを生成した時に呼ばれます。 */
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// XMLレイアウトを画面に設定する
setContentView(R.layout.sample_listview);
// XMLレイアウトからリストビューを取得する
ListView listView = (ListView) findViewById(R.id.listView1);

// リストビューに表示する項目を設定する
String[] items = { "項目1", "項目2", "項目3" };
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, items);
// リストビューにアダプターを設定する
listView.setAdapter(adapter);
}
}


■ ソースコードで定義 -----------------------------------------
package jp.inujirushi.sample.activity;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.LinearLayout;
import android.widget.ListView;

public class ListViewActivity extends Activity {
/** アクティビティを生成した時に呼ばれます。 */
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// リストビューを生成する
ListView listView = new ListView(this);
// レイアウトを生成する
LinearLayout layout = new LinearLayout(this);
// レイアウトにリストビューを追加する
layout.addView(listView);
// レイアウトを画面に設定します
setContentView(layout);

// リストビューに表示する項目を設定する
String[] items = { "項目1", "項目2", "項目3" };
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, items);
// リストビューにアダプターを設定する
listView.setAdapter(adapter);
}
}
スポンサーサイト

Comments

Leave a Comment


Body
プロフィール

とむ・やむくん

Author:とむ・やむくん
管理人について

Windows 7 / 64bit
Eclipse 4.2 Juno (日本語パッチ済)

スポンサーサイト
最新トラックバック
検索フォーム
ブロとも申請フォーム
QRコード
QR
Twitter
2013/01/04 19:00 カウント開始

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。