2013-01-14 82 views

回答

1

參見How to get NEW width/height of root layout in onConfigurationChanged?

視圖不會在重繪的onResume() - 繪製視圖不是此生命週期(http://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle)的一部分。重新繪製視圖時,您需要使用android.view.ViewTreeObserver.OnGlobalLayoutListener

但是請注意,我觀察到此方法並不總是按預期工作。在配置更改(旋轉)後,如果我不刪除偵聽器,則該方法觸發3次 - 前2個值具有舊值,第3次具有新值。如果我在收到通知後立即刪除監聽者,我仍然會得到舊值。 (但是,如果您不刪除偵聽器,則可能需要執行一些黑客操作以防止代碼再次運行。)

相關問題