[英]TextField in UITable Scroll on KeyBoard
我在UITableView
有UITextField
,当我单击UITextField
我已经移动了偏移量,但是我的问题是,当用户滚动到下一个字段时,它会显示奇怪的行为,有时输入刷新或焦点将返回到先前的UITextField
。
请参阅此代码并根据您的项目实施
(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
[self scrollViewToCenterOfScreen:textField];
返回是; }
(void)scrollViewToCenterOfScreen:(UIView *)theView {
CGFloat viewCenterY = theView.center.y;
CGRect applicationFrame = [[UIScreen mainScreen] applicationFrame];
CGFloat availableHeight = applicationFrame.size.height-200; //删除键盘覆盖的区域
CGFloat y = viewCenterY-availableHeight / 2.0;
如果(y <0){
y = 0;
}
[scrollview setContentOffset:CGPointMake(0,y)animation:YES];
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField {
if ([textField isEqual:txtStAppField])
{
[txtStConfirmField becomeFirstResponder];
}
else if ([textField isEqual:txtStConfirmField])
{
[txtDummyAppField becomeFirstResponder];
}
else if ([textField isEqual:txtStConfirmField])
{
[txtDummyConfirmFeild becomeFirstResponder];
}
else
{
[textField resignFirstResponder];
[scrollview setContentOffset:CGPointMake(0, 0) animated:YES];
}
return YES;
}
// txtStConfirmField,txtDummyConfirmFeild,txtDummyAppField,txtStConfirmField,txtStConfirmField是tectField名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.