package com.example.android.recipe046;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class Recipe046 extends Activity {
ArrayAdapter<String> mAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mAdapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1);
// リストアイテムを追加
for (int i = 0; i < 20; i++) {
mAdapter.add("item_" + i);
}
// ListViewを取得
ListView listView = (ListView) findViewById(R.id.ListView01);
// ListViewにフッターを追加
// 必ずsetAdapterの前に呼び出すこと
listView.addFooterView(
getLayoutInflater().inflate(R.layout.footer, null),
null,
true
);
// ListViewにAdapterを追加
listView.setAdapter(mAdapter);
// リスナーをセット
listView.setOnItemClickListener(
new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent,
View view,
int position,
long id) {
// クリックされたViewがフッターか判定
if (view.getId() == R.id.Footer) {
// 表示する数字を計算
int count = mAdapter.getCount();
int max = count + 5;
for (;count < max; count++) {
// リストアイテムを追加
mAdapter.add("item_" + count);
}
}
}
});
}
}