在视图iphone中添加scrollView

时间:2013-02-27 16:48:00

标签: iphone uiscrollview scrollview

我有一个带有一些UITextFields的表单视图。我想在滚动视图中添加表单视图。

以下是我设计表单及其文本字段的方法:

    - (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;
}

我在“textFieldDidBeginEditing”中添加了这个:( signView是其中包含表单视图的视图)

 UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.signView.frame.size.width, self.signView.frame.size.height)];
       scroll.pagingEnabled = YES;
       [scroll addSubview:self.Form];

       scroll.contentSize = CGSizeMake(self.signView.frame.size.width*self.Form.frame.size.width, self.Form.frame.size.height);

但是当我点击文本文件时,表单视图的所有文本字段都会消失。我可以将我的滚动视图嵌入到视图中吗?

谢谢

2 个答案:

答案 0 :(得分:0)

你正在做return _Form;

什么是_Form

据我了解你必须返回container。 所以做到这一点

return container;

你正在制作UITextField但是你在哪里添加subView作为你的视图,你只是创建它。

答案 1 :(得分:0)

是的,但你必须通过添加子视图将你的UITextField放在容器中,这是你的容器

    if (!_form) {
      //YOUR STUFF then -> add container subview your view  
      [container addSubview:yourTEXTField]
      return container;
    }
    else { 
      return _form;
    }