Hatena::Groupandroid

Droidくん「JavaとXMLの魔境、Androidフレームワークの世界へようこそ!」

 | 

2010-06-30AndroidのGUIウィジェットをXMLで記述してカスタマイズする事例

Spinnerをカスタマイズする方法メモ

19:17 | はてなブックマーク - Spinnerをカスタマイズする方法メモ - Droidくん「JavaとXMLの魔境、Androidフレームワークの世界へようこそ!」

View側でなにも考えずにSpinnerというドロップダウン選択肢みたいなやつを作ると、

Webサイト上のチュートリアルでよく見るようなラジオボタンっぽい画像がついた文字の大きな選択肢になってくれない。

米粒のような小さいフォントで文字列が表示されてしまって押し難いことこのうえない。


スピナーはボタンを押す前のビューと押したあとに表示されるダイアログ風のビューのふたつがあって、それぞれ別々に指定する必要があるらしい。

ダイアログ風ビューのときの見た目は

adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);

のようにスピナーのArrayAdapterオブジェクトに対して明示的に指定しないと変えられないようだ。

これを忘れるとデフォルトの豆文字フォントで表示されてしまう。

レイアウトXMLで両方ともまとめて定義する方法はあるんだろうか…


android.R.layout.simple_dropdown_item_1lineはandroidフレームワーク内で定義済みのスタイルらしい。


res/layout/main.xml

<Spinner android:id="@+id/spn"
	android:prompt="選択肢を選んでください"
	android:layout_height="wrap_content" android:layout_width="wrap_content"
	android:layout_alignParentTop="true" android:layout_centerHorizontal="true"
	/>

src/com.example.hoge/Activity.java

Spinner spn = (Spinner) findViewById(R.id.spn);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(mActivity, R.layout.rowdata);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
adapter.add("hoge");
spn.setAdapter(adapter)

AddyAddy2012/02/15 05:05Boom shakalaka boom boom, problem soelvd.

twhrwztwhrwz2012/02/15 17:39xvOg3K <a href="http://swmgvbwbpiyx.com/">swmgvbwbpiyx</a>

pbhhznpbhhzn2012/02/17 21:25iUnWbv <a href="http://maofsnogcxhv.com/">maofsnogcxhv</a>

JulianaJuliana2013/11/22 18:21Such an imrsipseve answer! You've beaten us all with that!

NelsonNelson2013/11/24 08:53Fidinng this post solves a problem for me. Thanks! http://ztmsjg.com [url=http://yhcxlfmx.com]yhcxlfmx[/url] [link=http://cjmuttefd.com]cjmuttefd[/link]

HanifHanif2013/11/25 10:23I really wish there were more <a href="http://kjhzglzeiph.com">artilces</a> like this on the web.

JohnJohn2013/11/25 16:18That's an inventive answer to an inenitstreg question http://puffhr.com [url=http://kujxpe.com]kujxpe[/url] [link=http://oragnrdre.com]oragnrdre[/link]

トラックバック - http://android.g.hatena.ne.jp/yuiseki/20100630
 |