4

私はandroid 2.3とandorid 4.0をフォローしようとしています。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@color/myColor"
    android:orientation="vertical" >

<Spinner 
            android:id="@+id/spinnerControl"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:layout_marginLeft="10dp" 
            android:textColor="@android:color/white"
            android:drawSelectorOnTop="true"
            android:divider="#000000"         
    android:dividerHeight="1dp" 
    style="@style/Sherlock.__Widget.Holo.Spinner"
            />
</LinearLayout>

スタイルxmlファイルは -

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Sherlock.__Widget.Holo.Spinner" parent="@android:style/Widget">              
<item name="android:dropDownVerticalOffset">0dip</item>     
<item name="android:dropDownHorizontalOffset">0dip</item>     
<item name="android:dropDownWidth">wrap_content</item>     
<item name="android:gravity">left|center_vertical</item>     
<item name="android:spinnerMode">dropdown</item>     
<item name="android:clickable">true</item> 
</style> 
</resources>

Android 4.0 では、スピナー コントロールのすぐ下にスピナー ドロップダウンが表示されます。しかし、andorid 2.3 では、画面の真ん中に表示されます。理由はわかりません。助けてください。

4

1 に答える 1

1

正確には、androidが4.0に追加した新しいテーマでした。このスタイルを取得するには、「holo」というテーマを提供する必要があります。残念ながら、2.X デバイスでは使用できません。そのため、2.X ではそのようなドロップダウンを取得できません。

于 2012-10-29T07:32:46.107 に答える