提问人:snachmsm 提问时间:11/22/2018 最后编辑:Rohit5k2snachmsm 更新时间:11/22/2018 访问量:51
检查 NullPointer setVisibility 案例
Inspecting NullPointer setVisibility case
问:
在我的崩溃日志中,我偶尔会看到以下内容:
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setVisibility(int)' on a null object reference
at AbstractFragment.init(Unknown Source)
at ExtendingFragment.onEnabled(Unknown Source)
at ExtendingFragment.enableScrolling(Unknown Source)
at ExtendingFragment$7.onClick(Unknown Source)
at android.view.View.performClick(View.java:5210)
...
就这么简单,对吧?问题肯定出在 ,但是:AbstractFragment.init
void init(MyPOJO myPOJO, View.OnClickListener aListener, View.OnClickListener bListener,
boolean stored) {
this.myPOJO= myPOJO;
this.aListener = aListener;
this.bListener = bListener;
this.stored = stored;
this.inflater = LayoutInflater.from(getActivity());
used = new SparseBooleanArray();
verticalMargin = getResources().getDimensionPixelSize(R.dimen.article_spacing_vertical);
horizontalMargin = getResources().getDimensionPixelSize(R.dimen.article_spacing_horizontal);
if (samsung_4_4_have_bug == null) //static
samsung_4_4_have_bug = Build.VERSION.SDK_INT == 19 &&
Build.MANUFACTURER.toLowerCase(Locale.getDefault()).contains("samsung");
}
这里的任何调用,实际上它只是一个“二传手”。所以也许在?让我们看看:setVisibility
ExtendingFragment.onEnabled
@Override
public void onEnabled(int pendingId) {
if (pendingId == localId && someView != null)
someView.post(() -> someView.callOnClick());
}
不,也...里面没有,也没有电话......setVisibility
OnClickListener
setVisibility
AbstractFragment.init
在里面,我准备了几个听众,但没有电话ExtendingFragment.enableScrolling
setVisibility
ExtendingFragment$7.onClick
建议这发生在一些之后,但我已经在两个片段层中检查了所有,你永远不会猜到......这些都没有电话......NullPointer
OnClick
OnClickListeners
setVisibility
那么如何解决这个问题呢?我正在使用一些切换,但没有在堆栈方法中列出的任何方法中。如何检查?visibility
答: 暂无答案
评论
setVisibility