2013-07-02 44 views
5

我正在使用微調控制器,它會像對話框一樣打開。我需要微調打開,如下拉菜單。微調控制器顯示如同對話框

這裏是xml文件

<Spinner 
android:id="@+id/sp_countrycode_issue_coupon" 
android:layout_width="60dp" 
android:layout_height="40dp" 
android:layout_gravity="center" 
android:layout_marginLeft="3dp" 
android:layout_weight="1" 
android:background="@drawable/img_small_box_green" 
android:dropDownSelector="@drawable/img_small_box_green" 
android:gravity="right|center" 
android:textAlignment="center" /> 

下面是代碼

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
      this, R.array.country_code, 
      android.R.layout.simple_spinner_item); 

adapter.setDropDownViewResource(R.layout.spinner_textview); 
sp_country_code.setAdapter(adapter); 

我貼我的圖片波紋管像我的觀點和微調顯示視圖。但我需要微調要像第三圖像顯示

Here is my layout Spinner displays in this way But I need in this format

+0

您正在測試哪個android版本? – Nirali

+0

目前android 4.1。但是,同樣的事情也會顯示在2.3及以下版本 –

回答

3

對於在圖像3所示的信息下拉旋轉器是適用從3.0 版本和上述。對於像2.2和2.3之類的以前版本,它將像對話框一樣打開。如果你選擇的Android 4.0以上版本,它會自動顯示出2.3以上

樣式將被自動添加在版本下拉列表。

<!-- 
    Base application theme for API 14+. This theme completely replaces 
    AppBaseTheme from BOTH res/values/styles.xml and 
    res/values-v11/styles.xml on API 14+ devices. 
--> 
<style name="AppBaseTheme" parent="android:Theme.DeviceDefault.Light.DarkActionBar"> 
    <!-- API 14 theme customizations can go here. --> 
</style>  

enter image description here

Refrence代碼

severitySpinner = (Spinner) findViewById(R.id.spinnerSeverity); 
    severityAdapter = ArrayAdapter.createFromResource(this, 
      R.array.severity_arrays, android.R.layout.simple_spinner_item); 
    severityAdapter 
      .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    severitySpinner.setAdapter(severityAdapter); 

編輯

<application 
     android:icon="@drawable/appicon" 
     android:label="Test" 
     android:theme="@style/AppTheme" > 
+0

單選按鈕:Theme.Light現在我把它改到Android:Theme.DeviceDefault.Light。DarkActionBar和我感覺沒什麼區別,但唯一的一個是我可以在下拉菜單中看到的單選按鈕。目前我正在使用android 4.1 –

+0

你是否更改過代碼部分? – Nirali

+0

是的,我在代碼中進行了更改,即使 –

0

只要改變這樣的代碼:

ArrayAdapter<String> spinnerMenu = new ArrayAdapter<String>(
        RegisterActivity.this, R.layout.spinner_item, list); 
      // TODO Auto-generated method stub 
      spinnerMenu 
        .setDropDownViewResource(android.R.layout.simple_list_item_single_choice); 

      country.setAdapter(spinnerMenu); 
      country.getSelectedItemPosition(); 
+0

其顯示像「R.layout.spinner_textview」而不是「R.layout.spinner_item」 –

+0

但我已經爲定製微調文本所做的......所以你只要把你的xml文件,而不是它....只是沒有,並得到一個正確的下拉 –

2

清單文件,改變主題android:theme="@android:style/Theme.Holo.Light.NoActionBar.Fullscreen" 和在xml文件中爲spinner設置樣式style="@style/MyDropDownNav" 和樣式文件添加樣式。

<!-- style the list navigation --> 
<style name="MyDropDownNav" parent="android:style/Widget.Holo.Light.Spinner"> 
    <item name="android:popupBackground">@drawable/bg_popup</item> 
    <item name="android:dropDownSelector">@drawable/top_layout</item> 
</style> 
+0

它顯示在下拉列表,但如何擺脫單選按鈕。 –

+0

我能得到下拉,但如何刪除先前我的主題設置爲Android的列表項 –

4

晚,但可能會向其他人有用,你可以簡單地設置spinnerMode到下拉:

android:spinnerMode="dropdown" 

另外,如果你決定你想象的變化和未來的希望對話只是改變模式對話框!

+0

不是真正的兄弟。 spinnermode工作API級別11以上 –