Почему я получаю исключение NullPointerException в fn = list.getSelectedItem().toString();
.NPE при сохранении выбранного элемента ListView
public class FileList extends Activity{
ListView list;
String fn;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.filelist);
list = (ListView) findViewById(R.id.lv1);
String pth = Environment.getExternalStorageDirectory().getPath();
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getListOfFiles(pth));
list.setAdapter(adapter);
list.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0,
View arg1, int position, long arg3)
{
System.out.println(list.getSelectedItem().toString());
fn = list.getSelectedItem().toString(); //NPE Here
}
});
}
theres опечатка в строке 5 'getSelectedItem()'. – r2DoesInc
@ r2DoesInc что? Похоже, я ослеплен: D вы можете найти его для меня: P –
Где объявлено fn? Обратите внимание, что вы не можете изменять значение переменных, объявленных вне области действия OnItemClickListener, и вы можете читать их значения только в том случае, если они объявлены 'final' – mittelmania