在android中绘制视图时意外崩溃[关闭]
Posted
技术标签:
【中文标题】在android中绘制视图时意外崩溃[关闭]【英文标题】:Unexpected crash while drawing view in android [closed] 【发布时间】:2016-12-10 13:44:47 【问题描述】:我正在编写音乐播放器应用程序,我重用了单个片段来显示回收器视图,以便按标题、艺术家、专辑和流派对音乐进行分类。
我使用这个库https://github.com/FutureMind/recycler-fast-scroll 来快速滚动部分。图书馆在我的标题、艺术家和专辑的音乐中运行良好。当我尝试切换到流派选项卡时,应用程序强制以异常关闭。所有 4 个片段的代码完全相同。 在跟踪日志中,我的代码没有任何痕迹,我无法弄清楚我应该在哪里查看我的代码来解决这个问题。在此处附加跟踪日志,不胜感激。
12-10 19:09:08.204 16317-16317/com.bhandari.player.music.musicplayer E/androidRuntime: FATAL EXCEPTION: main
Process: com.bhandari.player.music.musicplayer, PID: 16317
Theme: themes:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setOnTouchListener(android.view.View$OnTouchListener)' on a null object reference
at com.futuremind.recyclerviewfastscroll.FastScroller.initHandleMovement(FastScroller.java:186)
at com.futuremind.recyclerviewfastscroll.FastScroller.onLayout(FastScroller.java:162)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1079)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1799)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1079)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1735)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1579)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1488)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.support.design.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1142)
at android.support.design.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:836)
at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:850)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:1193)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.support.design.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1142)
at android.support.design.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:836)
at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:850)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1735)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1579)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1488)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1735)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1579)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1488)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2934)
at android.view.View.layout(View.java:16639)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:2179)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1939)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1115)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6023)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:858)
at andro
【问题讨论】:
【参考方案1】:不用担心,我自己解决了。 这是由于我为显示文件夹而创建的其他选项卡造成的。我为此使用了不同的片段,忘记将滚动条初始化为那个。
【讨论】:
以上是关于在android中绘制视图时意外崩溃[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
CATiledLayer drawLayer:inContext:在检索要绘制的图像时释放视图时崩溃
MatplotLib (TKinter) + OpenCV 在 Python 3 中崩溃
如何在TextureView Android中绘制立方体[关闭]