【问题标题】:How to get android navigation editor to work with many screens如何让 android 导航编辑器在多个屏幕上工作
【发布时间】:2020-01-14 13:56:21
【问题描述】:

所以我遇到了这种情况,我似乎无法让 android studio 显示我的导航图布局可视化。导航编辑器过去在有 10 个左右的屏幕时可以正常工作,但随着我不断添加屏幕,我开始注意到我的编辑器将停止工作,我必须使缓存无效并重新启动才能正常工作再次。但是当我在图表中添加更多屏幕时,我无法再让它工作。更糟糕的是,如果我不小心打开了 navigation.xml,所有布局预览窗口都会停止工作,这真的很烦人。我尝试为 android studio 分配更多内存,但这似乎没有帮助。我在每个片段/对话框上都有布局属性,我可以在预览中看到占位符,但它不会呈现布局。

有什么想法吗?

编辑:这发生在 AS3.5 中。 AS3.6 预览版 情况变得更糟,因为根本没有渲染图表。

当前图表的屏幕截图:

【问题讨论】:

  • 我遇到了同样的问题,在我最复杂的导航图中大约有三分之一的屏幕,除了预览不加载,而且 Android Studio 变得非常缓慢或无响应并且用完记忆。我已将 Xmx 堆大小设置为最大值(3072MB)并且它一直在发生。当它出现内存不足异常时,它提供了一个更改堆设置的选项,其中 Xmx 预填充为 3072,旁边的文本显示“当前值:1280”,甚至在我更改设置后多次重新启动。这变得非常令人沮丧。
  • 关闭导航编辑器后内存情况没有改善。所以在使用它并关闭它之后,我们需要重新启动 Android Studio 才能继续工作。

标签: android android-studio android-architecture-navigation


【解决方案1】:

我建议将该导航图的一些较小的、逻辑相关的部分重构为nested navigation graphs。您可以像使用布局一样使用<include app:graph="@navigation/nested_graph" /> 标签。我建议尝试在代码中任何有意义的地方提取较小的功能。

这并不能解决 Android Studio 无法处理这种大小的图形的问题,但它应该可以解决这个问题。

【讨论】:

  • 感谢您的建议,不幸的是,图形节点过于依赖而无法成为可行的解决方案。
猜你喜欢
  • 1970-01-01
  • 2018-12-30
  • 2020-07-22
  • 2015-02-28
  • 1970-01-01
  • 2021-03-08
  • 2021-03-30
  • 1970-01-01
  • 2023-03-28
相关资源
最近更新 更多