У меня есть 10 текстовых полей в UIView
, и я добавил представление в scrollView
. При этом будут отображаться 5 текстовых полей, а остальные будут прокручиваться.
In my textFieldDidBeginEditing
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
if (textField.tag>=4)
{
CGRect viewframe=contentsOfView.frame;
viewframe.origin.y=viewframe.origin.y-100;
contentsOfView.frame=viewframe;
}
}
А в моем textFieldDidEndEditing
-(void)textFieldDidEndEditing:(UITextField *)textField
{
if(textField.tag>=4)
{
CGRect viewframe=contentsOfView.frame;
viewframe.origin.y=viewframe.origin.y+100;
contentsOfView.frame=viewframe;
}
}
Первые 5 полей, которые отображаются на экране, работают отлично, если я прокручиваю экран для следующего текстового поля. Если я нажму на него, клавиатура не появляется.
[contentsOfView addSubview:nameField];
[contentsOfView addSubview:mobileNumberField];
[contentsOfView addSubview:passwordField];
[contentsOfView addSubview:taxiNumberfield];
[contentsOfView addSubview:emailIdField];
[contentsOfView addSubview:taxiTypeField];
[contentsOfView addSubview:licenseNumber];
[contentsOfView addSubview:nricNumber];
[contentsOfView addSubview:noOfPassengerField];
[contentsOfScrollView addSubview:contentsOfView];
[self.view addSubView:contentScrollView ];
Текстовое поле
nameField.borderStyle=UITextBorderStyleLine;
nameField.layer.borderWidth=1.0;
nameField.layer.borderColor=[[HexColorCode colorWithHexastring:@"c88202" ] CGColor];
nameField.keyboardType=UIKeyboardTypeNamePhonePad;
nameField.placeholder=@"NAME";
nameField.backgroundColor=[UIColor whiteColor];
UIView * paddingView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 15, 20)];
nameField.leftView = paddingView;
nameField.leftViewMode = UITextFieldViewModeAlways;
nameField.contentVerticalAlignment=UIControlContentVerticalAlignmentCenter;
nameField.delegate=self;
nameField.tag=1;