java Android:将TextView作为参数传递给外部函数将返回nullpointerexception
我试图将TextView作为参数传递给外部类以执行某些功能,但每次都遇到NullPointerException
活动。java
tv = (TextView) findViewById(R.id.tv);
Log.v("", "Contents: " + tv.getText().toString()); // This works fine
externalClass.addViewToList(tv);
externalClass.printViewContents(tv.getText().toString());
外部类
public List<View> _views;
// This doesn't work
public void addViewToList(View v) {
try {
this._views.add(v);
Log.v("", "Added " + v.getId() + " to list");
}
catch(NullPointerException ex) {
Log.e("", "NullPointerException when adding view to list");
}
}
// But this works fine
public void printViewContents(String contents) {
Log.v("",contents);
}
因此,我知道该视图已在布局中找到。xml,并且它已经初始化,我的问题是如何将视图从活动传递到外部类
谢谢
编辑
忘记列表需要初始化为ArrayList
干杯
# 1 楼答案
您的_视图列表未初始化,即您试图将数据写入null。 要解决此问题,您需要编写:
而不仅仅是:
为了减少头痛,我建议您使用数组列表:
现在它可以工作了:)
# 2 楼答案
您的“\u视图”列表未初始化。请看下面的工作
public List_views=new ArrayList()
多谢各位