2013-10-11 52 views
0

我試圖移動我的UIScrollView,讓鍵盤顯示時鍵盤的方式。UIScrollView setContentOffset:(0,0)更改視圖?

有什麼奇怪的是滾動視圖移動太多。我注意到,如果我甚至只是將scrollview的內容偏移量設置爲(0,0),它仍然會將視圖向下移動。奇怪的是,在我設置它之前,scrollview的contentOffset是0,0! Whattt!

- (void)keyboardWasShown:(NSNotification*)notification { 
    NSLog(@"%f %f", scrollView.contentOffset.x, scrollView.contentOffset.x); 
    [scrollView setContentOffset:CGPointMake(0.0, 0.0) animated:YES]; 
} 

這打印(0,0),但如果我評論第二行,視圖不會移動。 setContentOffset是否有奇怪的次要結果?

+0

它調用scrollViewDidScroll,所以也許你正在做一些事情。 – Odrakir

+0

@Odrakir nope沒有實現任何其他方法 – pfrank

+0

然後將代碼發佈到創建scrollView並設置其內容的位置。因爲這條線本身起作用。 – Odrakir

回答

0

試試這個:

- (void)keyboardWasShown:(NSNotification*)notification { 
CGFloat ay = 150; 
[scrollView setContentOffset:CGPointMake(0.0, textField.frame.origin.y-ay) animated:YES]; 
} 

改變這裏的y的值按照您的要求。取決於您希望滾動視圖移動的程度。

+0

你真的沒有回答我的問題,當然如果我正確地設置它會抵消這一舉措。 – pfrank