2012-05-31 34 views
0

想知道我是否可以得到一些幫助,解決我遇到的問題?我已經在這裏搜索了答案,雖然我發現了一些相關的主題,但我仍然在努力...在計算中使用微調值

下面你可以看到我使用的是一個微調器,要求用戶選擇Large,Med或小。

然後將選擇發送到TextView。

我現在想要做的是值分配給3種選擇,大= 6,中值= 4,小= 2。 接下來會出現一個EditText框供用戶添加自己的值。 然後我想提出兩個值成計算(比如*他們在這個例子中)把答案變成一個TextView。

這裏任何幫助將是巨大的。

非常感謝 威爾

String[] items = { "Large", "Med", "Small" }; 

@Override 
public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
    setContentView(R.layout.plugfan); 
    Factor = (TextView) findViewById(R.id.Factor); 

    Spinner spin = (Spinner) findViewById(R.id.spinner); 
    spin.setOnItemSelectedListener(this); 

    ArrayAdapter aa = new ArrayAdapter(
      this, 
      android.R.layout.simple_spinner_item, 
      items); 

    aa.setDropDownViewResource(
     android.R.layout.simple_spinner_dropdown_item); 
    spin.setAdapter(aa); 
} 

public void onItemSelected(AdapterView<?> parent, View v, int position, 
     long id) { 
    Factor.setText(items[position]); 
} 


public void onNothingSelected(AdapterView<?> parent) { 
    Factor.setText(""); 
} 

回答

0

一個快速的方法來解決這個問題(不是最聰明的一個)是有一個paralell陣列:

int[] itemValues = { 6, 4, 2 }; 

在該方法中onItmeSelected可以使用的setText itemValue,而不是項目。

如果您想要更多的面向對象解決方案,那麼返回一個字符串列表作爲您的微調模型的新類可能是一個解決方案(枚舉也可以解決它)。

+0

感謝您的想法,可惜我不能得到它的工作...不知道如果我在想念的東西或有更多的要求得到這個去...你測試了上述理論,知道它的工作原理? – Will