gpt4 book ai didi

Android:检测 View 的父 Activity 是否暂停

转载 作者:行者123 更新时间:2023-11-30 04:51:45 28 4
gpt4 key购买 nike

在我的一个 Activity 中,我有一个显示位置列表的 ListView。对于每个列表项,我想要一个指向相应位置方向的小箭头图标。我通过扩展 ImageView 实现了这个图标。这个自定义 View 有一个监听器,它通过相应地旋转图标图像来对设备方向的变化使用react。我在 onAttachedToWindow() 方法中注册了监听器,并在 onDetachedFromWindow() 中注销了它。这种方法有效,但问题是 onDetachedFromWindow() 有时仅在包含 Activity 暂停后很长时间才被调用。此外,整个布局整体看起来有点老套。所以我的问题是:是否有适当的方法来注销监听器,或者您是否会以完全不同的方式开始实现?

最佳答案

我认为您遇到困难是因为您承认您的设计很老套。我认为您可能应该做的是让您的 Activity 监听设备方向并使用 onPause/onResume 来处理方向更改的注册。然后有一个自定义光标,当它发生变化时由 Activity 更新。然后自定义光标可以调用 notifyDataSetChanged 通知 ListView 更新。然后在 getView 调用中,您可以传入箭头正确显示所需的数据。这样,唯一会更新的箭头就是那些可见的箭头。您将只有一个地方可以接收方向数据,稍后您可以处理 onScrollStateChanged 并在用户滚动时停止更新箭头(如果它对滚动动画的影响太大)。

关于Android:检测 View 的父 Activity 是否暂停,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3081176/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com