我有以下代碼,我想在按鈕偵聽器中訪問'selectedTeam'。如何從spinner監聽器訪問變量?
//Adding setOnItemSelectedListener method on spinner.
sTeams.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
selectedTeam = parent.getItemAtPosition(position).toString();
editText.setText(selectedTeam, TextView.BufferType.EDITABLE);
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
buttonApply.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
String editedName = editText.getText().toString();
// Here I want to access selectedTeam
}
});
我試圖宣佈該方法以外的變量,但給出的誤差從內部類內訪問「變量‘selectedTeam'is,需要聲明最終’。我試過了,但是因爲最終的字符串不能被改變,所以這是行不通的。
感謝說明。我現在明白了,儘管我還不知道如何解決我的問題。如何從方法外訪問'selectedTeam'? –
對不起我的壞。我編輯爲'selectedTeam'。'selectedTeam'現在包含班級成員,因此您可以在匿名班級內外訪問它。 –
@ no-name請注意外面不再有'selectedTeam'聲明來防止陰影問題,或者您只是簡單地在內部類中使用'ClassName.this.selectedTeam'而不是'selectedTeam'。 –