2011-06-21 60 views
0

我有一個關於屏幕高度大小的窗體,我試圖在鍵盤彈出時調整窗口視圖的框架大小,這很好。發現了很多很棒的教程。但彈出鍵盤後,我只能點擊前4個字段(巧合地是鍵盤上方的字段)。我仍然可以使用Tab導航到較低的那個,然後在彈出鍵盤之前單擊它們,但我無法滾動到較低的文本字段並單擊它。調整Iphone ScrollView中斷字段

我沒有做太多的代碼,但我不知道爲什麼它會這樣做。

- (void) makeRoomForKeyboard:(NSNotification *)notif { 
    float keyboardHeight = [[[notif userInfo] objectForKey:UIKeyboardBoundsUserInfoKey] CGRectValue].size.height; 
    scrollForm.frame = CGRectMake(0, 0, scrollForm.frame.size.width, windowHeight-keyboardHeight); 
} 

我把其中一個領域是不工作更高的地方,好的領域,它再次正常工作。我猜測有一個矩形或者我沒有設置觸發事件的東西。

回答

1

不要更改scrollForm框架,而是設置底部contentInset。

+0

完美,像一個魅力工作。非常感謝。 – Heckman

1

我認爲你需要調整UIScrollView的內容區域,除了調整框架。

如果您的UIScrollView本來是顯示所有內容不滾動正確的尺寸,你可以說這樣的事情:

scrollForm.contentSize = scrollForm.frame.size; 
scrollForm.frame = CGRectMake(0, 0, scrollForm.frame.size.width, windowHeight-keyboardHeight); 

這應該讓你滾動滾動視圖的被覆蓋的區域鍵盤。