![](/img/trans.png)
[英]Android proguard obfuscated code is causing NullPointerException when it really shouldn't be
[英]Why is my compiler expecting a NullPointerException when it shouldn't?
我在方法外创建了一个FloatingActionButton
对象,但没有赋予它任何值。 在方法fabInitializer
,我通过引用XML文件中的标记来为其提供值。 当我想使用我创建的类对象的方法时,Android Studio会说:
object.method()可能会产生Java空指针异常。
该程序运行正常。
如果对象值为null
,则应生成该消息,但不是。 我怎样才能解决这个问题?
public void fabInitializer() {
mFab = (FloatingActionButton) findViewById(R.id.fab);
mFab.setOnClickListener(this);
}
这只是一个警告。 Android Studio无法得出mFab
不为空的结论(因为它可能有多种原因 )。 如果要删除警告并更防御地编写代码,请添加防御性的空检查:
if (mFab!=null) mFab.setOnClickListener(this);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.