【问题标题】:Android TV Custom Presenter Error: Do not setLayoutFrozen in layout or scrollAndroid TV Custom Presenter Error: Do not setLayoutFrozen in layout or scroll
【发布时间】:2016-06-17 08:02:27
【问题描述】:

我曾尝试使用一个自定义视图创建一个自定义演示者,将视频播放到表面视图中,第一次绑定后我收到此错误消息。有什么问题?我没有设置任何布尔值来冻结layour或类似的东西。

    java.lang.IllegalStateException: Do not setLayoutFrozen in layout or scroll
at android.support.v7.widget.RecyclerView.assertNotInLayoutOrScroll(RecyclerView.java:2164)
at android.support.v7.widget.RecyclerView.setLayoutFrozen(RecyclerView.java:1750)
at android.support.v17.leanback.app.BaseRowFragment.onTransitionStart(BaseRowFragment.java:199)
at android.support.v17.leanback.app.RowsFragment.onExpandTransitionStart(RowsFragment.java:483)
at android.support.v17.leanback.app.BrowseFragment.startHeadersTransitionInternal(BrowseFragment.java:435)
at android.support.v17.leanback.app.BrowseFragment.access$200(BrowseFragment.java:77)
at android.support.v17.leanback.app.BrowseFragment$3.onRequestChildFocus(BrowseFragment.java:546)
at android.support.v17.leanback.widget.BrowseFrameLayout.requestChildFocus(BrowseFrameLayout.java:124)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.support.v7.widget.RecyclerView.requestChildFocus(RecyclerView.java:2081)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.view.ViewGroup.requestChildFocus(ViewGroup.java:740)
at android.support.v7.widget.RecyclerView.requestChildFocus(RecyclerView.java:2081)
at android.view.ViewGroup.addViewInner(ViewGroup.java:4341)
at android.view.ViewGroup.addView(ViewGroup.java:4145)
at android.view.ViewGroup.addView(ViewGroup.java:4086)
at android.support.v7.widget.RecyclerView$5.addView(RecyclerView.java:591)
at android.support.v7.widget.ChildHelper.addView(ChildHelper.java:107)
at android.support.v7.widget.RecyclerView$LayoutManager.addViewInt(RecyclerView.java:6708)
at android.support.v7.widget.RecyclerView$LayoutManager.addView(RecyclerView.java:6666)
at android.support.v7.widget.RecyclerView$LayoutManager.addView(RecyclerView.java:6654)
at android.support.v17.leanback.widget.GridLayoutManager$2.cre    ateItem(GridLayoutManager.java:1473)
at android.support.v17.leanback.widget.SingleRow.appendVisibleItems(SingleRow.java:111)
at android.support.v17.leanback.widget.Grid.appendOneColumnVisibleItems(Grid.java:364)
at android.support.v17.leanback.widget.GridLayoutManager.appendOneColumnVisibleItems(GridLayoutManager.java:1696)
at android.support.v17.leanback.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:1881)
at android.support.v7.widget.RecyclerView.disp    atchLayoutStep2(RecyclerView.java:3026)
at android.support.v7.widget.RecyclerView.disp    atchLayout(RecyclerView.java:2903)
at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3277)
at android.view.View.layout(View.java:16630)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16630)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16630)
at android.view.ViewGroup.layout(ViewGroup.java:5437)
at android.support.v7.widget.RecyclerView$LayoutManager.layoutDecor    ated(RecyclerView.java:7629)
at android.support.v17.leanback.widget.GridLayoutManager.layoutChild(GridLayoutManager.java:1631)
at android.support.v17.leanback.widget.GridLayoutManager.access$2700(GridLayoutManager.java:53)
at android.support.v17.leanback.widget.GridLayoutManager$2.addItem(GridLayoutManager.java:1540)
at android.support.v17.leanback.widget.SingleRow.appendVisibleItems(SingleRow.java:124)
at android.support.v17.leanback.widget.Grid.appendOneCol`

【问题讨论】:

  • 您有解决方案吗?我有完全相同的崩溃,但我无法重现它
  • @MykhailoYuzheka 不,我暂时停止为 Android TV 工作。我会在我购买 Android 电视时尝试。
  • 仍然面临这个问题?
  • 如何解决这个问题,我正面临这个问题

标签: android android-recyclerview television leanback


【解决方案1】:

Presenter 实现看起来不错。在入口过渡期间,您似乎正在运行滚动或布局。

您是否正确地继承了 BrowseFragment?你能分享你的应用代码吗?

【讨论】:

  • 我需要查看应用程序代码 - 特别是 BrowseFragment/RowsFragment 实现来找出问题所在。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-08
相关资源
最近更新 更多