【问题标题】:Android slow custom layoutAndroid慢自定义布局
【发布时间】:2015-07-16 17:35:06
【问题描述】:

我有以下问题:我想显示背景将是自定义布局的对话框片段。但是在这个自定义布局的构造函数中,我膨胀了 xml 布局,然后我以编程方式添加视图(根据构造函数中的数据)。所以构造函数中有分配,而且速度非常慢。即使我尝试为打开对话框的按钮设置动画,该按钮的动画也是滞后的(它显示为 4-5 帧)。所以显然在这个自定义布局的构造函数中分配和添加这么多对象不是一个好习惯,但是我该如何避免这种情况呢?我想根据数据添加视图,因为我无法将它们全部添加到我膨胀的布局中。我不能复制代码,因为它与工作有关。 提前致谢。

【问题讨论】:

  • 你能发布一些代码吗?
  • 如果没有看到您的代码,我们将无法为您提供太多帮助

标签: android android-custom-view


【解决方案1】:

我认为您需要使用RecyclerLayout 或ListView 来填充动态元素。当您将大量视图动态添加到 UI 视图时,这需要时间。

希望它会有所帮助。

【讨论】:

  • 不幸的是,我没有找到任何关于 RecyclerLayout 的信息。 ListView 在我的情况下没用。我会尝试将所有视图都放在 xml 中,但我认为这不会有帮助。
  • 您要添加什么类型的视图?您可以在 listView 中添加任何类型的视图,但您需要有点棘手。
  • 我膨胀 FrameLayout 并在其中有 15 个视图(我将所有这些视图都添加了边距,因为它们应该位于此视图上的特定位置)。所以我不知道如何使用ListView。但这对我来说仍然很奇怪,为什么当我按下打开对话框的按钮时为什么按钮的动画滞后?我为背景和另外 15 个相对布局膨胀 ImageView,我在每个中添加 1 或 2 个 ImageView,然后为它们设置 imageresource,然后为所有 ImageView 创建和启动动画。我知道这不是软工作,但动画滞后很奇怪。这是非常丑陋的。感谢您的关注。
  • 你熟悉listView吗?你说的是哪个按钮动画,是用来打开对话框的按钮还是对话框中的按钮?
  • 是的,我对 ListView 很熟悉。我说的是用来打开对话框的动画。
猜你喜欢
  • 1970-01-01
  • 2014-06-25
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多