我有一个ListView, 我想创建一个OnItemSelectedListner,我在代码中做,我称之为mylistener。 为什么list.setOnItemSelectedListener不接受mylistener?
感谢您的帮助
ListView list = (ListView)findViewById(android.R.id.list);
ArrayAdapter<String> adapter = new ArrayAdapter<String> (this,android.R.layout.simple_list_item_1,array);
list.setAdapter(adapter);
list.setOnItemSelectedListener(mlistener);
AdapterView.OnItemSelectedListener mlistener = new AdapterView.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
Toast.makeText(getApplicationContext(),"selezionato", Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
};
答案 0 :(得分:3)
在使用之前,您应该声明并初始化mlistener
。
答案 1 :(得分:2)
尝试在list.setOnItemSelectedListener(mlistener);
答案 2 :(得分:0)
只需重新排序代码:
ListView list = (ListView)findViewById(android.R.id.list);
ArrayAdapter<String> adapter = new ArrayAdapter<String> this,android.R.layout.simple_list_item_1,array);
AdapterView.OnItemSelectedListener mlistener = new AdapterView.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
Toast.makeText(getApplicationContext(),"selezionato", Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
};
list.setAdapter(adapter);
list.setOnItemSelectedListener(mlistener);