我已經嘗試了滾動視圖的多個實現來處理鍵盤的存在,包括蘋果自己的存在。我無法讓他們工作。只有當顯示鍵盤時才需要UIScrollView
我有一個視圖,當鍵盤不顯示時不需要滾動,但是一旦文本字段是第一響應者,並且鍵盤顯示時,一些內容需要滾動。
請注意,唯一的可編輯文本字段是第一個在屏幕上,所以我不需要滾動視圖來取消隱藏任何東西 - 我只需要屏幕上半部分的滾動功能,但只有當鍵盤是顯示。
這是接近我可以得到:
我可以成功註冊鍵盤的通知。在加載時,我將滾動視圖和內容大小設置爲視圖的整個高度。當鍵盤顯示器,我調整了滾動到原來的高度減去鍵盤高度:
scrollView.frame = CGRectMake(0, 0, 320, 416 - kbSize.height);
而就躲,我只是重置:
scrollView.frame = CGRectMake(0, 0, 320, 416);
這幾乎工程。除了顯示鍵盤之後,如果向下滾動到視圖的底部(使鍵盤保持顯示狀態),然後使用返回鍵隱藏鍵盤,當滾動視圖調整大小時,會出現不雅的「跳轉」回到頂部的屏幕。沒有平滑的動畫滾動來調整滾動視圖的大小。
任何想法?與蘋果公司的實施相比,我認爲我做了一個黑客攻擊,但它距離我最近。
嘗試把你的框架調整到一個動畫塊? – 2012-04-17 14:04:14