張貼了大量的代碼,我想確保它不是一個衆所周知的問題(獨立於特定的代碼)之前,因此,我首先在一般解釋我的問題:的UIScrollView:內容首次出現過低
在故事板我創建了一個UIViewController,添加了UIScrollView以及另一個UIView(分層子視圖)。當鍵盤出現時,我需要滾動視圖來將內容向上推,以便文本框保持可見。在運行應用程序時,除了事實之外,一切都可以正常工作,即內容看起來更接近屏幕的底部,而不是我的故事板中定義的內容。只要我點擊文本字段,內容就會滾動(通過調整scrollView.contentInset
和scrollView.scrollIndicatorInsets
至(0.0, 0.0, keyboardSize!.height, 0.0)
),其位置與預期相同。當按下返回鍵時,鍵盤消失,內容再次向下滾動(通過調整scrollView.contentInset
和scrollView.scrollIndicatorInsets
至(0.0, 0.0, 0.0, 0.0)
),但現在一切都像我想要的那樣,並且像故事板中定義的一樣。
試圖瞭解發生了什麼我還讓打印出控制檯中的一些y點viewDidLoad()
,keyboardDidShow
和keyBoardDidHide
但是當比較這些時,它們都是一樣的。我錯過了什麼?你需要看到我的代碼的一些特定部分?
你有沒有嘗試在viewDidLoad中設置'scrollView.contentInset和scrollView.scrollIndicatorInsets爲(0.0,0.0,0.0,0.0)'? – Putz1103 2014-10-03 16:18:31
是的,我做了,但是初始位置保持不變@ Putz1103 – 2014-10-03 19:50:52
哦,它在把它放到'viewDidAppear()'的時候工作!你認爲,這是一個優雅的解決方案還是解決代碼中丟失的東西的解決方法?它實際影響的是什麼,爲什麼當視圖首先加載時它的設置是不同的? – 2014-10-03 19:56:11