我在滚动视图中添加了3个UITextfields和1个UIButton。
我的主要要求是当我点击UITextfield时,滚动必须向上滚动到键盘上方用户可见的所有字段。
当我单击键盘上的返回按钮时,滚动默认情况下必须滚动使用自动布局设置的scrollview contentSize。
ProcessBuffer
答案 0 :(得分:0)
请查看这个非常棒的教程,它对您有用。
**
**
正如在博客中所说,当你使用autolayout时,你需要以这种方式设置约束。
NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:self.contentView attribute:NSLayoutAttributeLeading relatedBy:0 toItem:self.view attribute:NSLayoutAttributeLeft multiplier:1.0 constant:0]; [self.view addConstraint:leftConstraint]; NSLayoutConstraint *rightConstraint = [NSLayoutConstraint constraintWithItem:self.contentView attribute:NSLayoutAttributeTrailing relatedBy:0 toItem:self.view attribute:NSLayoutAttributeRight multiplier:1.0 constant:0]; [self.view addConstraint:rightConstraint];
根据您的要求更改价值和名称。
答案 1 :(得分:0)
出现keyBoards时。
CGRect frame = currentActiveView.frame; // your scrollview frame
frame.size.height = SCREEN_HEIGHT - 216 - keyboardAccesssory.frame.size.height;
currentActiveView.frame = frame;
[yourScrollView setContentSize:CGSizeMake(SCREEN_WIDTH, SCREEN_HEIGHT)];
当键盘辞职时..
CGRect frame = currentActiveView.frame; // your scrollview frame
frame.size.height = SCREEN_HEIGHT;
currentActiveView.frame = frame;
[yourScrollView setContentSize:CGSizeMake(SCREEN_WIDTH, SCREEN_HEIGHT)];
答案 2 :(得分:0)
您需要使用视图的框架。 在显示键盘时将框架移动到键盘上方,而在隐藏键盘时重置其位置。 您需要以编程方式执行此操作。 您也可以浏览Apple的编程指南。 https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html#//apple_ref/doc/uid/TP40009542-CH5-SW3