0

如何将此视图包含在 scrollerView 中?

我有一个带有不同文本字段的子视图,我想将它放在滚动视图中,以便当用户单击字段视图时滚动。

    - (UIView *)Form
{
    if (!_Form) {

        CGRect frame = CGRectMake(0.0, Height, Width, 310.0);
        UIView *container = [[UIView alloc] initWithFrame:frame];

        CGFloat y = 15.0;
        frame = CGRectMake(15.0, y, width, height);
        UITextField *field = [[UITextField alloc] initWithFrame:frame];
        [
        field.placeholder = @"text";


        CGFloat spacing = 8.0;
        y = frame.origin.y + height + spacing;
        frame = CGRectMake(15.0, y, kDeviceWidth - 2*15.0, height);
        field = [[UITextField alloc] initWithFrame:frame];

        field.placeholder = @"text6";


        frame.size.height = 200.0;

        y = frame.origin.y + height + space;
        frame = CGRectMake(15.0, y, width - 2*15.0, height);
        field = [[UITextField alloc] initWithFrame:frame];

        field.placeholder = @"text1*";



        y = frame.origin.y + height + 16.0;
        CGFloat w = (kDeviceWidth - 2 * 15.0) / 2;
        frame = CGRectMake(15.0, y, w - 2.0, height);
        field = [[UITextField alloc] initWithFrame:frame];

        field.placeholder = @"text3*";


        frame = CGRectMake(15.0 + w + 2.0, y, w - 2.0, height);
        field = [[UITextField alloc] initWithFrame:frame];

        field.placeholder = @"text4*";


        y = frame.origin.y + height + spacevalue;
        frame = CGRectMake(15.0, y, w, height);
        field = [[UITextField alloc] initWithFrame:frame];

        field.placeholder = @"text5";



        y = frame.origin.y + height + 20.0;
        frame = CGRectMake((frame.size.width - 192.0) / 2, y, 192.0, 34.0);



        y = frame.origin.y + height + 8.0;
        frame = CGRectMake((frame.size.width - 192.0) / 2, y, 192.0, 34.0);
    }
    return _Form;
}

你能帮我写代码吗?谢谢

4

1 回答 1

0

我有这个代码:

CGPoint puntoInicial;
-(void) textFieldDidBeginEditing:(UITextField *)textField {
    CGPoint pt;
    CGRect rc = [textField bounds];
    rc = [textField convertRect:rc toView:scrollView];
    pt = rc.origin;
    puntoInicial = pt;
    pt.x = 0;
    pt.y -= 250;
    [scrollView setContentOffset:pt animated:YES];
    textField.autocapitalizationType = UITextAutocapitalizationTypeAllCharacters;
}

//Bajar la pantalla cuando se termina de editar
-(void) textFieldDidEndEditing:(UITextField *)textField {
    puntoInicial.x = 0;
    puntoInicial.y = 0;
    [scrollView setContentOffset:puntoInicial animated:YES];
}

只把它放在你的代码和 textField -> Connections inspector -> Oulets -> Delegate 中,把文件所有者

于 2013-02-27T00:07:05.600 回答