我有一個android應用程序,我需要將一個變量(樂器)傳遞給它的主要活動。這看起來像一個簡單的問題,但它讓我感到困惑。我環顧四周,我已經注意到編寫getInstrument方法似乎是個好主意。這是我做過什麼至今:在java中將變量從一個類傳遞到另一個類
public class MainActivity extends Activity{
//I need to read the instrument variable here
public void addListenerOnSpinnerItemSelection(){
instrumentSp = (Spinner) findViewById(R.id.instrument);
instrumentSp.setOnItemSelectedListener(new CustomOnItemSelectedListener());
}
}
單獨的類(在單獨的文件):
public class CustomOnItemSelectedListener implements OnItemSelectedListener {
private int instrument;
public void onItemSelected(AdapterView<?> parent, View view, int pos,long id) {
Toast.makeText(parent.getContext(),
"Please wait a minute for the instrument to be changed. ", Toast.LENGTH_SHORT).show();
//"Item : " + parent.getItemAtPosition(pos).toString() + " selected" + pos,
//Toast.LENGTH_SHORT).show();
instrument = pos;
}
public int getInstrument(){
return instrument;
}
}
但我不認爲我可以調用,在主活動getInstrument()方法,因爲該對象只存在於偵聽器中。必須有一個非常簡單的方法。我讀了一些帖子,但問題似乎是這個類的對象並不存在。感謝您的任何見解。
謝謝,但我想外面使用getInstrument FO的addListenerOnSpinner功能。 – dorien
看到我編輯的答案 – Abubakkar
我實現了這一點,似乎有道理。但是在調用getInstrument(nullpoint)時出現錯誤。任何想法? – dorien