我想使用自动布局以编程方式将滚动视图添加到滚动视图中,但添加文本字段时,它将显示在左上角,其大小正确但它没有宽度(可能是2个像素)。我怎样才能让文本域被限制到屏幕的宽度?如何使用自动布局以编程方式将uiTextfield添加到滚动视图
以下是我的viewDidLoad方法:
self.scrollView = [[UIScrollView alloc] init];
[self.scrollView setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.view addSubview:self.scrollView];
self.emailField = [[UITextField alloc] init];
[self.emailField setTranslatesAutoresizingMaskIntoConstraints:NO];
[self.scrollView addSubview:self.emailField];
NSDictionary *views = @{ @"view":self.view, @"scrollView":self.scrollView, @"textField":self.emailField};
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"V:|[scrollView]|"
options:0
metrics:nil
views:views]];
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"H:|[scrollView]|"
options:0
metrics:nil
views:views]];
[self.scrollView addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"H:|[textField]|"
options:0
metrics:nil
views:views]];
[self.scrollView addConstraints: [NSLayoutConstraint constraintsWithVisualFormat:@"V:|[textField(46)]"
options:0
metrics:nil
views:views]];
spuggy,你尝试插入self.emailField到您的意见字典之前,你启动它?它不会导致异常吗? – 2014-12-06 08:55:03
如果此代码运行并且不显示电子邮件字段,原因是您正在为您的scrollView创建一个模糊的可滚动contentSize。为内容明确定义宽度,然后您将看到它。 – Sandeep 2014-12-06 08:59:48
Mike.R谢谢我编辑了我的问题,但那只是一个复制粘贴错误 – grabury 2014-12-06 09:00:43