2

我想在 onConfigurationChanged 之后获取 GridView 的宽度和高度,所以当我将设备从横向摆动到纵向时,我想获取网格的新宽度和高度值

4

1 回答 1

1

请参阅如何在 onConfigurationChanged 中获取根布局的新宽度/高度?

视图不会在 onResume() 中重绘- 绘制视图不是此生命周期的一部分(http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle)。android.view.ViewTreeObserver.OnGlobalLayoutListener当视图被重新绘制时, 您需要使用通知。

但是请注意,我观察到这种方法并不总是按预期工作。在配置更改(轮换)之后,如果我不删除侦听器,该方法会触发 3 次 - 前 2 次具有旧值,第 3 次具有新值。如果我在收到通知后立即删除侦听器,我仍然会得到旧值。(但如果你不移除监听器,你可能需要实施一些技巧来防止代码再次运行。)

于 2013-08-02T00:13:45.430 回答