kongzue / kongzue/DialogXSample
DatePicker 闪退 版本0.0.12
- Dominant language
- Java
- Stars
- 178
- Forks
- 17
- PR merge metrics
- No merged PRs in 30d
Description
ATAL EXCEPTION: main
Process: com.xushizhilian.app.kd.test, PID: 29209
java.lang.NullPointerException: Attempt to read from field 'int android.view.View.mViewFlags' on a null object reference in method 'void android.view.ViewGroup.dispatchDraw(android.graphics.Canvas)'
at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4440)
at android.view.View.draw(View.java:24737)
at com.kongzue.dialogx.datepicker.view.WheelView.drawItems(WheelView.java:689)
at com.kongzue.dialogx.datepicker.view.WheelView.onDraw(WheelView.java:648)
at android.view.View.draw(View.java:24728)
at android.view.View.updateDisplayListIfDirty(View.java:23520)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4668)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4641)
at android.view.View.updateDisplayListIfDirty(View.java:23445)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:736)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:745)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:851)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:5653)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:5332)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4433)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2990)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10455)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1663)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1672)
at android.view.Choreographer.doCallbacks(Choreographer.java:1189)
at android.view.Choreographer.doFrame(Choreographer.java:1061)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1642)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the stack trace in datepicker/view/WheelView.java, especially drawItems at line 689 and onDraw at line 648. Reproduce the DatePicker crash using the reported 0.0.12 version and inspect the null View involved in drawing. Done means the DatePicker no longer throws this NullPointerException during rendering.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100