[簡単Androidアプリ] スピナ(Spinner)を使ってみよう!!




今回はスピナ(Spinner)について書いていこうとおもいます。

スピナはリストビューに似ていますが、右端をタッチすることでリストがドロップダウンして表示されます。


まずは、プロジェクトの作成を行ってください。

[簡単Androidアプリ] プロジェクトの作成からHello Worldテキストの出力まで

Layout

レイアウトの作成を行います。


レイアウトを設定するxmlファイルを開きましょう。(ここではactivity_sample_main.xml)



palette -> コンポジット -> Spinner をアプリケーション画面にドラッグします。



Coding

コードを入力していきます。

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.Spinner;
import android.widget.Toast;

public class SampleMain extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // レイアウトの指定
        setContentView(R.layout.activity_sample_main);

        // オブジェクトの作成
        final Spinner sp = (Spinner) findViewById(R.id.spinner1);

        // リストビュー表示する文字列を設定します
        String[] SpStr = {
                "OS","CPU","メモリ",
                "ディスプレイ","ハードディスク","SSD",
                "Office","GPU","キーボード",
                "マウス","スピーカー"
        };


        // リストビューに表示する文字列を、格納するアダプターの作成
        ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, SpStr);

        // スピナをクリックした時の表示形式の指定
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

        // スピナにアダプターを設定
        sp.setAdapter(adapter);

        // スピナをクリックした時の処理をするリスナ
        sp.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

            @Override
            public void onItemSelected(AdapterView parent, View view, int position, long id) {
                // クリックされた項目の文字列を取得
                String tmpStr = (String) sp.getSelectedItem();

                // トーストに取得した文字列を表示
                Toast.makeText(SampleMain.this, tmpStr + "が選択されました", Toast.LENGTH_LONG).show();
            }

            @Override
            public void onNothingSelected(AdapterView parent) {
                // TODO 自動生成されたメソッド・スタブ

            }
        });
    }
}



Execution

では実際に実行してみましょう。


スピナをクリックすると・・・


ドロップダウンメニューが表示されます。
さらに項目をクリックすると・・・


トーストが表示されます。





前記事:[簡単Androidアプリ] リストビュー(ListView)に日付を表示してみよう!!「ArrayAdapterクラスの拡張」
次投稿:[簡単Androidアプリ] ダイアログ(AlertDialog)を使ってみよう!!



0 コメント: