다음 코드는 제대로 실행될 수 있지만 사용시 오류가 발생합니다. Toast.makeText(this,((TextView) view).getText().toString(), 2000).show();
이유를 모르겠습니다. Toast.makeText(this.parent,((TextView) view).getText().toString(), 2000).show();
을 사용해도 오류가 발생합니다. 한번에 사용Toast.makeText는 setOnItemSelectedListener에서 오류를 발생시킵니다.
private void InitControl() {
ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item,
nameList.toArray(new String[nameList.size()]));
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinnerFolder.setAdapter(adapter1);
spinnerFolder.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this,
((TextView) view).getText().toString(), 2000).show();
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
});
코드가 완벽하게 실행되었으므로 문제가 무엇인가요? 언급해야 할 것은 : 코드에서'this'를 사용하면,'MainActivity.this'가 아닌'새로운 OnItemSElectedListener'의 인스턴스를 참조하는 것입니다. 이것은 코드 자체에서 가지고있는 것입니다. 'this.parent' 글쎄, 내가 당신에게 권하는 것을 모른다. P – LuckyMe
'error'를 정의하고, stacktrace를 게시한다. – njzk2
Toast.makeText (getApplicationContext(), adapter1.getAdapter(). getItem (position) .toString(), 2000). – Oli