1

スピナーボタンのスタイルを変更しようとしました(アイテムではありません!)。どういうわけかそれは適用されません:

 <style name="myStyle"  parent="@android:style/Widget.TextView.SpinnerItem">
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_height">50dip</item>
    <item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
    <item name="android:textStyle">italic</item>
 </style>

<Spinner 
     android:id="@+id/widget_type_spinner"
     style="@style/myStyle"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"/>

反対に、これを私のテーマで定義すると、それは魅力のように機能しました。

<style name="Standard" parent="android:style/Theme.Black">
    <item name="android:spinnerItemStyle">@style/myStyle</item> 
</style>

しかし、私はすべてのスピナーにこの動作を望まない...何かアイデアはありますか?

4

1 に答える 1

1

次のようなことができると思います:

onCreate()

Spinner spinner = (Spinner) findViewById(R.id.widget_type_spinner);
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this, R.layout.my_spinner,getResources().getStringArray(R.array.array_of_strings));
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(categorySpinnerAdapter);

レイアウト内 (レイアウト フォルダー内)

<Spinner 
 android:id="@+id/widget_type_spinner"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"/>

my_spinner.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textview_spinner"
    android:layout_width="wrap_content"
    android:layout_height="50dip"
    android:textAppearance="@android:style/TextAppearance.Small"
    android:textStyle="italic" >
</TextView>
于 2012-05-18T18:16:55.523 に答える