2012-02-15 67 views
-1

我正在研究我的第一個Android應用程序,並且我正在創建基本的運動/卡路里計數器。我有兩個紡紗工,一個用於選定的鍛鍊類型,另一個用於在幾分鐘內完成所述鍛鍊的時間。我需要能夠同時檢查紡紗的值/位置,所以我可以做這樣的事情:Android Spinners

僞代碼:

if(Exercise spinner = "push-ups") 
{ 
    CaloriesBurned = TimeSpinnerValue*450 
} 
if(Exercise spinner = "sit-up") 
{ 
    CaloriesBurned = TimeSpinnerValue*350 
} 

等。 。 。沒有什麼花哨。我的旋轉器從我的String.xml中的字符串數組填充。但我不知道如何獲得微調器的價值,所以我可以在我的Java代碼中的一些IF語句中使用它。

回答

2

像這樣用於比較任何字符串與你的微調。

spinner.equals("push-ups"); 
+0

我如何調用/創建位置參數我在我的XML代碼中創建的微調對象,在我的java代碼中?所以我可以做你喜歡的東西嗎? – user1174834

+0

你可以用這種方式創建微調對象。 (Spinner)旋轉=(微調)findViewById(R.id .spin);' – Deepak

+0

太好了,生病了,試試謝謝。 – user1174834

2
yourSpinner.setOnItemSelectedListener(new OnItemSelectedListener() { 

@Override 
public void onItemSelected(AdapterView<?> parent, View arg1, int position, long arg3) { 

    String selectedString = (String) (yourSpinner.getAdapter()).getItem(position); 

} 

@Override 
public void onNothingSelected(AdapterView<?> arg0) { 

}}); 

check this link fro more info

2

您需要實現OnItemSelectedListener用於獲取來自微調選定的值。然後覆蓋,

public void onItemSelected(AdapterView<?> parent, View v, int position, 
      long id) { 

     int id = parent.getId(); 
      switch (id) { 
     case R.id.first_spinner: 
      // your stuff here 
      break; 

     case R.id.second_spinner: 
      // your stuff here 
      break; 
     } 
    } 

    public void onNothingSelected(AdapterView<?> parent) { 

    } 
1

一般地,你要遵循這個模式:

SpinnerAdapter adapter = Spinner.getAdapter(); 
int position = Spinner.getSelectedItemPosition(); 
Object value = adapter.getItem(position); 

既然你是用字符串值加載它,你可以再投值的字符串。

1

有一些外地在活動舉辦微調的價值,具有一定的默認值 初始化實現onItemSelectedListener上微調,並在onItemSelected獲得所選項目的價值,由onItemSelected(AdapterView adapterView, View view, int position, long id)