2012-02-08 67 views
0

我想這個代碼微調onItemSelected一個動作要觸發獲取數據

findUsStateOrMileSpinnerState.setOnItemSelectedListener(
    new AdapterView.OnItemSelectedListener() { 
    public void onItemSelected(AdapterView<?> adapterView, View view, 
     int i, long l) 
    { 
     spinnerState = findUsStateOrMileSpinnerState.getSelectedItem().toString(); 
     if(spinnerState.equalsIgnoreCase("State")){ 
      getDetailsState(); 
     } 
     if(spinnerState == "Miles"){ 
      getDetailsMiles();    
     }  
    } 

    public void onNothingSelected(AdapterView<?> adapterView) { 
     return; 
    } 
    } 
); 

在一些選定的項目應該調用另一個偵聽器。 Spinner擁有Miles和State。 但它沒有通過if語句,我做錯了什麼。 期待您的回覆。 謝謝。

回答

0

你應該做字符串通過equals比較,而不是spinnerState == "Miles"

0

使用equalsIgnoreCase一次或等於而不是使用==比較字符串

1

嘗試使用getSelectedIndex()而不是getSelectedItem()。您必須確保您始終在指定索引處獲得「州」和「里程」。

相關問題