NullPointerException:尝试调用虚拟方法';void android.widget.TextView.setText(java.lang.CharSequence)和#x27;关于空对象引用
所以我有这个代码:NullPointerException:尝试调用虚拟方法';void android.widget.TextView.setText(java.lang.CharSequence)和#x27;关于空对象引用,java,android,arraylist,nullpointerexception,Java,Android,Arraylist,Nullpointerexception,所以我有这个代码: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.favourites); assert getSupportActionBar() != null; getSupportActionBar().setDisplayHomeAsUpEnabled(true)
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.favourites);
assert getSupportActionBar() != null;
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
SharedPreferences prefs = getSharedPreferences("myFavs", 0);
Map<String, String> m = (Map<String, String>) prefs.getAll();
List<String> list = new ArrayList<>(m.values());
ListView listView = (ListView) findViewById(R.id.favsList);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.listlayout, android.R.id.text1, list );
listView.setAdapter(adapter);
我已经阅读了关于为什么会发生这种情况的文章,但我不知道我需要更改哪些代码才能使其正常工作。尝试将
android.R.id.text1
更改为R.id.text1
。另外,请检查您的列表布局是否有id为text1的文本视图尝试将android.R.id.text1
更改为R.id.text1
。另外,请检查您的列表布局
是否有id为text1
的文本视图。问题的出现是因为您引用的文本视图不在指定的布局中
android.R.id.text1
是内置在操作系统中的Android操作系统类的文本视图
您需要使用在中指定的Textview的id
R.layout.listlayout
更改该选项,您的错误将得到解决。问题的出现是因为您引用的文本视图不在指定的布局中
android.R.id.text1
是内置在操作系统中的Android操作系统类的文本视图
您需要使用在中指定的Textview的id
R.layout.listlayout
更改此选项,您的错误将得到解决。替换此选项
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.listlayout, android.R.id.text1, list );
ArrayAdapter=新的ArrayAdapter(这个,R.layout.listlayout,android.R.id.text1,列表);
用这个
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1, android.R.id.text1, list );
ArrayAdapter=new ArrayAdapter(这是android.R.layout.simple_list_item_1,android.R.id.text1,list);
替换此
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,R.layout.listlayout, android.R.id.text1, list );
ArrayAdapter=新的ArrayAdapter(这个,R.layout.listlayout,android.R.id.text1,列表);
用这个
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1, android.R.id.text1, list );
ArrayAdapter=new ArrayAdapter(这是android.R.layout.simple_list_item_1,android.R.id.text1,list);
您可以发布“listlayout”代码吗。在listlayout中使用textview而不是标准的android.R.id.text1您可以共享您的listlayout您可以发布“listlayout”代码吗。在listlayout中使用textview而不是标准的android.R.id.Text1您可以共享您的listlayout吗