Recently in doing and picture related display appeared a problem, tidy up ideas, share out for everyone to reference:
The following is an exception for a null pointer, which appears in Galleryadapter.
Short Msg:java.lang.NullPointerException
Long Msg:java.lang.NullPointerException:Attempt to invoke virtual method ' Android.view.viewgroup$layoutparams Android.view.View.getLayoutParams () ' On a null object reference
Build Label:lenovo/passion/passion:5.1.1/lmy47v/vibeui_v2.8_1532_5.268.1_st_p1c72:user/release-keys
Build changelist:vibeui_v2.8_1532_5.268.1_st_p1c72
Build time:1438611592000
Java.lang.NullPointerException:Attempt to invoke virtual method ' Android.view.viewgroup$layoutparams Android.view.View.getLayoutParams () ' On a null object reference
//At Android.widget.Gallery.setUpChild (gallery.java:893)
//At Android.widget.Gallery.makeAndAddView (gallery.java:872)
//At Android.widget.Gallery.layout (gallery.java:669)
//At Android.widget.Gallery.onLayout (gallery.java:361)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.FrameLayout.layoutChildren (framelayout.java:579)
//At Android.widget.FrameLayout.onLayout (framelayout.java:514)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.FrameLayout.layoutChildren (framelayout.java:579)
//At Android.widget.FrameLayout.onLayout (framelayout.java:514)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.FrameLayout.layoutChildren (framelayout.java:579)
//At Android.widget.FrameLayout.onLayout (framelayout.java:514)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.LinearLayout.setChildFrame (linearlayout.java:1703)
//At Android.widget.LinearLayout.layoutHorizontal (linearlayout.java:1692)
//At Android.widget.LinearLayout.onLayout (linearlayout.java:1468)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.FrameLayout.layoutChildren (framelayout.java:579)
//At Android.widget.FrameLayout.onLayout (framelayout.java:514)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.LinearLayout.setChildFrame (linearlayout.java:1703)
//At Android.widget.LinearLayout.layoutVertical (linearlayout.java:1557)
//At Android.widget.LinearLayout.onLayout (linearlayout.java:1466)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.widget.FrameLayout.layoutChildren (framelayout.java:579)
//At Android.widget.FrameLayout.onLayout (framelayout.java:514)
//At Android.view.View.layout (view.java:15725)
//At Android.view.ViewGroup.layout (viewgroup.java:5041)
//At Android.view.ViewRootImpl.performLayout (viewrootimpl.java:2105)
//At Android.view.ViewRootImpl.performTraversals (viewrootimpl.java:1862)
//At Android.view.ViewRootImpl.doTraversal (viewrootimpl.java:1080)
//At Android.view.viewrootimpl$traversalrunnable.run (viewrootimpl.java:5933)
//At Android.view.choreographer$callbackrecord.run (choreographer.java:791)
//At Android.view.Choreographer.doCallbacks (choreographer.java:604)
//At Android.view.Choreographer.doFrame (choreographer.java:574)
//At Android.view.choreographer$framedisplayeventreceiver.run (choreographer.java:777)
//At Android.os.Handler.handleCallback (handler.java:739)
//At Android.os.Handler.dispatchMessage (handler.java:95)
//At Android.os.Looper.loop (looper.java:135)
//At Android.app.ActivityThread.main (activitythread.java:5380)
//At Java.lang.reflect.Method.invoke (Native Method)
//At Java.lang.reflect.Method.invoke (method.java:372)
//At Com.android.internal.os.zygoteinit$methodandargscaller.run (zygoteinit.java:939)
The main tracking directions are:
// At Android.widget.Gallery.setUpChild (gallery.java:893)
// At Android.widget.Gallery.makeAndAddView (gallery.java:872)
at Android.widget.Gallery.layout (gallery.java:669)
An exception occurred in this galley class:
Mainly in the Setupchild method, the Child view variable child is void caused by:
Note that the Makeandaddview view is empty when it is worn, not on the map, and the final conclusion is:
A null pointer exception was caused by the return of the Galleryadapter GetView method to null
In fact, I wrote when the array out of bounds, so, before GetView to make a judgment
Public View GetView (int position, View Convertview, ViewGroup parent) {if (Position < 0 | | mitems = NULL | | Position & gt;= mitems.size ()) {return <span style= "font-family:arial;" >convertview;</span>}
Because the Android bottom is written in C + +, many default is null, resulting in the above exception.
Solution:
1. You can set a default view to pass to Convertview:
2, prevent the array out of bounds, will not enter this judgment, according to the normal flow, do not appear this exception (individual is because the set directly assigned value,
Set direct assignment will report the physical address of the original collection to the new collection, it is recommended to use the AddAll () method, so that the data is not out of bounds because of other operations)
The above is the individual in the development of problems, come out and share with you, welcome to reference and know.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
Nullpointerexception:attempt to invoke virtual method ' Android.view.viewgroup$layoutparam