我有一個滾動視圖,其中包含許多文本字段作爲子視圖,我希望所選文本字段(_activeField)在鍵盤出現時向上滾動。ScrollView的scrollRectToVisible鍵盤通知在iOS中無法正常工作11
- (void) keyboardUP:(NSNotification *)notification
{
NSDictionary* info = [notification userInfo];
CGSize kbSize = [[info objectForKey:UIKeyboardFrameBeginUserInfoKey] CGRectValue].size;
UIEdgeInsets contentInsets = UIEdgeInsetsMake(0.0, 0.0, kbSize.height + 10, 0.0);
_scroller.contentInset = contentInsets;
_scroller.scrollIndicatorInsets = contentInsets;
CGRect aRect = App_Delegate.window.frame;
aRect.size.height -= kbSize.height;
CGRect rect = [_activeField convertRect:_activeField.frame fromView:App_Delegate.window];
if (!CGRectContainsPoint(aRect, rect.origin))
{
[_scroller scrollRectToVisible:rect animated:YES];
}
}
此代碼爲iOS 10工作正常,但在iOS的11,其沒有工作,「scrollRectToVisible」不滾動了滾動,即使其內容的大小是正確的。
嘗試使用[TPKeyboardAvoiding(https://開頭github.com/michaeltyson/TPKeyboardAvoiding)而不是,更容易 – Srdjan
我基本上很好奇,知道是否有限制這個代碼的功能的iOS11中的ScrollView有任何特定的變化。 –
我有同樣的問題,沒有時間檢查,因爲生產應用程序有問題,所以我添加了庫,它是固定的 – Srdjan