2011年02月15日

androidのSpinner

AndroidでのスピンボタンSpinnerの使い方。

まず最初にレイアウトを決めます。(res-layout-input.xml)


<LinearLayout
xmlns:android="http:⁄⁄schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<Spinner
android:id="@+id/time_spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:prompt="@string/time_prompt"/>
</LinearLayout>


次にスピン内の要素を定義します。(res-values-string.xml)

Choose time

@string/t_arr_0
@string/t_arr_1
@string/t_arr_2
@string/t_arr_3


Morning
Lunch
Evening
Night


最後にプログラム内で、レイアウトとSpinnerの要素を結びつけます。
また、Spinnerで選択したときのリスナーsetOnItemSelectedListenerと初期値の設定setSelectionを行っています。

public class ClassName extends Activity implements OnItemSelectedListener {
・・・
Spinner spinner = (Spinner) findViewById(R.id.time_spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.time_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(this);
spinner.setSelection(0);
・・・
}


最後に、Spinnerで要素が選択された場合の処理を記述します。
setOnItemSelectedListenerをimplementsしているので、onItemSelectedとonNothingSelectedをOverrideします。

@Override
public void onItemSelected(AdapterView parent, View view, int pos, long id) {
// TODO 自動生成されたメソッド・スタブ
String st = parent.getItemAtPosition(pos).toString();
Log.w("sel:" + st, "SIS called");
}

@Override
public void onNothingSelected(AdapterView arg0) {
// TODO 自動生成されたメソッド・スタブ
}
posted by yv-mgr at 10:45| Comment(0) | TrackBack(1) | android Layout
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/43431024

この記事へのトラックバック

Spinnerをカスタムする
Excerpt: 前回は基本的なSpinnerを作成しました スピナーを作成する 今回は前回作成したものをベースにカスタムしていこうと思います まずは setDropDownViewResource を追加してレイアウ..
Weblog: 初心者の初心者のためのAndroidアプリ開発!
Tracked: 2012-04-23 16:42