リストとダイアログ (6/8)
作成:2009-12-28 10:56
更新:2010-05-11 13:34
更新:2010-05-11 13:34
■イベント処理を追加しよう
とりあえず、これで項目の表示はできましたが、リストを選択したときの処理などもやっぱり用意したいですね。そこで、「クリックした項目名を表示する」といった簡単なイベント処理を追加してみましょう。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
package jp.tuyano;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.*;
import android.widget.AdapterView.OnItemClickListener;
public class SampleApp extends Activity {
private Activity me;
private ListView list;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
me = this;
String[] arr = {"東京都","神奈川県","千葉県","埼玉県","茨城県","栃木県","群馬県"};
// コンポーネントの設定
list = (ListView)this.findViewById(R.id.list);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.layout.list, arr);
list.setAdapter(adapter);
list.setSelection(1);
// イベント組み込み
list.setOnItemClickListener(new MyClickAdapter());
}
// イベントクラス
class MyClickAdapter implements OnItemClickListener {
@Override
public void onItemClick(AdapterView<?> adapter,
View view, int position, long id) {
AlertDialog.Builder bldr = new AlertDialog.Builder(me);
bldr.setTitle("ALERT");
TextView txt = (TextView)view;
bldr.setMessage("選択項目:" + txt.getText());
DialogInterface.OnClickListener listner = new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
setResult(RESULT_OK);
}
};
bldr.setPositiveButton("OK",listner);
bldr.create();
bldr.show();
}
}
}
※関連コンテンツ