2012-10-08 29 views
0

這是我的代碼。如果我點擊「14」,那麼微調器應該被設置爲默認值14,如果我改變了「20」或一些值如「16」,它應該設置爲微調器的默認值。如何將微調控制器中的選定項目設置爲Android中的默認值?

所選的值必須顯示在微調器中。

Spinner font=new Spinner(con); 
option= new String[] {"Select","14","16","18","20"}; 
ArrayAdapter<String> adapter= new ArrayAdapter<String>(con,android.R.layout.simple_spinner_dropdown_item,option); 
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
font.setOnItemSelectedListener(new OnItemSelectedListener() { 

public void onItemSelected(AdapterView<?> arg0, View arg1,int position, long id) { 
if(!(arg0).getSelectedItem().toString().trim().equalsIgnoreCase("Select")) 
size=Float.parseFloat((option[(arg0).getSelectedItemPosition()]).trim()); 
     } 
public void onNothingSelected(AdapterView<?> arg0) { 
      // TODO Auto-generated method stub 

     } 
    }); 
font.setAdapter(adapter); 
int i; 
for(i=0;i<option.length;i++){ 

if(option[i].toString().equalsIgnoreCase("14")){ 
    } 
else { 
font.setSelection(i); 
     } 

    } 
+0

如何獲取這個大小? –

+0

你的默認值是什麼意思?當你在屏幕之間切換時,它不應該改變你選擇的值?或者當你選擇一個應該顯示的值時? – TNR

+0

當我在屏幕之間切換時,它不應該改變我在旋鈕中選擇的值嗎? –

回答

0

當您轉到下一個屏幕並重新啓動時,默認情況下它會自動顯示上次選擇的值(如果您的for循環代碼不存在於此處)。如果從Spinner屏幕轉到前一個屏幕並返回,則將再次創建微調器並重新設置適配器。所以最後選擇的值不能設置。如果仍然是您的要求,請在選定時將值保存到共享首選項。然後在設置適配器後,如果已經存在,則會得到該值。在你的代碼,而不是檢查與「14」相等的條件,你檢查它與共享偏好保存價值和呼叫setSelection(i)如果循環

+0

你能給我舉一個例子嗎?我是Android的初學者,我對Java有點了解。 –

相關問題