无法将UITextField添加到UIScrollView

克里斯托·乌祖诺夫(Hristo Uzunov)

我有一个视图控制器,向其中添加了滚动视图。然后,根据用户需要多少个文本字段,添加一些UITextField,以动态调整UIScrollView.contentSize的大小。到目前为止,我已经检查并仔细检查了委托,contentSize属性的大小,文本字段的来源和大小。我使用以下代码来做到这一点:

-(void)setScrollViewSize
{
    NSLog(@"Rows count: %d", self.rows);
    self.matrixInputScrollView.contentSize = CGSizeZero;
    CGSize scrollVieSize;
    if (!self.columns) {
    NSLog(@"Setting scroll view frame row");
    scrollVieSize = CGSizeMake(self.rows * TEXT_FIELD_WIDTH + (self.rows - 1) * TEXT_FIELD_INDENT, TEXT_FIELD_HEIGHT);
    }
    else
    {
        NSLog(@"Setting scroll view frame rows and columns");
        scrollVieSize = CGSizeMake(self.rows * TEXT_FIELD_WIDTH + (self.rows - 1) * TEXT_FIELD_INDENT, self.columns * TEXT_FIELD_HEIGHT + (self.columns - 1) * TEXT_FIELD_INDENT);
    }
    self.matrixInputScrollView.contentSize = scrollVieSize;

     if (!self.columns) {
         for (NSInteger i = 0; i < self.rows; ++i) {
             NSLog(@"Text filed adding");
             UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(i * (TEXT_FIELD_WIDTH + TEXT_FIELD_INDENT), 0, TEXT_FIELD_WIDTH, TEXT_FIELD_HEIGHT)];
             NSLog(@"uitextfield position ad size: %f %f %f %f", textField.frame.origin.x, textField.frame.origin.y, textField.frame.size.width, textField.frame.size.height);
             [self.matrixInputScrollView addSubview:textField];
         }
      }
      else
      {
          for (NSInteger i = 0; i < self.rows; ++i) {
             for (NSInteger j = 0; j < self.columns; ++j) {
                  UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(i * (TEXT_FIELD_WIDTH + TEXT_FIELD_INDENT), j * (TEXT_FIELD_HEIGHT + TEXT_FIELD_INDENT), TEXT_FIELD_WIDTH, TEXT_FIELD_HEIGHT)];
                   [self.matrixInputScrollView addSubview:textField];
            }
         }
      }

    NSLog(@"Before setNeedsDisplay");
    NSLog(@"Scroll view position and size: %f %f %f %f",      self.matrixInputScrollView.frame.origin.x, self.matrixInputScrollView.frame.origin.y,   self.matrixInputScrollView.frame.size.width, self.matrixInputScrollView.frame.size.height);
    NSLog(@"Scroll view content size: %f %f", self.matrixInputScrollView.contentSize.width,    self.matrixInputScrollView.contentSize.height);
}

以上示例的输出如下:

2013-10-16 15:27:30.672 RZCalc[2765:a0b] Rows count: 3
2013-10-16 15:27:30.672 RZCalc[2765:a0b] Setting scroll view frame row
2013-10-16 15:27:30.673 RZCalc[2765:a0b] Text filed adding
2013-10-16 15:27:30.673 RZCalc[2765:a0b] uitextfield position ad size: 0.000000 0.000000 40.000000 30.000000
2013-10-16 15:27:30.674 RZCalc[2765:a0b] Text filed adding
2013-10-16 15:27:30.674 RZCalc[2765:a0b] uitextfield position ad size: 50.000000 0.000000 40.000000 30.000000
2013-10-16 15:27:30.674 RZCalc[2765:a0b] Text filed adding
2013-10-16 15:27:30.675 RZCalc[2765:a0b] uitextfield position ad size: 100.000000 0.000000 40.000000 30.000000
2013-10-16 15:27:30.675 RZCalc[2765:a0b] Before setNeedsDisplay
2013-10-16 15:27:30.676 RZCalc[2765:a0b] Scroll view position and size: 76.000000 42.000000 244.000000 246.000000
2013-10-16 15:27:30.676 RZCalc[2765:a0b] Scroll view content size: 140.000000 30.000000

您在此处看到的是正在创建的滚动视图并将其放置在屏幕上,相应地调整了内容大小的大小,并创建了3个文本字段并将其添加到滚动视图中,其来源和大小均在contentSize限制内。

结果是滚动视图显示在屏幕上,而文本字段没有显示。

您能告诉我上面的代码是否有问题,还是需要更多有关它的信息?

Putz1103

添加评论作为答案:

将标签的背景色设置为不同于滚动视图的颜色,以查看是否存在标签。您没有为标签设置任何格式设置选项,因此目前它们可能只是透明视图。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将UITextField添加到导航项的标题视图

来自分类Dev

将UIScrollView添加到Storyboard中的现有UIView

来自分类Dev

将UIViewcontrollers添加到UIScrollview

来自分类Dev

将UIView添加到UIScrollView时为空白

来自分类Dev

将UIPageControl添加到UIScrollView

来自分类Dev

将UITextField添加到UITableViewCell

来自分类Dev

无法将ChangeListener添加到JSpinner

来自分类Dev

将UILabel作为常量字段添加到UITextField的左侧

来自分类Dev

无法将cacheDecorator添加到ehcache

来自分类Dev

无法将JLabel添加到JPanel

来自分类Dev

无法将XAttribute添加到XElement

来自分类Dev

无法将RelativeLayout添加到DrawerLayout

来自分类Dev

Swift:将UILabel添加到UIScrollView无法滚动

来自分类Dev

将UIImageView添加到UIScrollView

来自分类Dev

Swift:将UISegmentedControl / UITextField添加到动态UITableView

来自分类Dev

将子视图添加到UIScrollView

来自分类Dev

将UIScrollView添加到Storyboard中的现有UIView

来自分类Dev

将UITextField添加到UITableViewCell

来自分类Dev

将项目添加到UIScrollView到顶部

来自分类Dev

以编程方式将UIImageView添加到UIScrollView

来自分类Dev

将UILabel作为常量字段添加到UITextField的左侧

来自分类Dev

如何将文本添加到活动的UITextField

来自分类Dev

将动态视图添加到UIScrollView

来自分类Dev

如何正确地将UITextField添加到UITableViewCell

来自分类Dev

将UITextField的内容添加到NSMutableArray Swift iOS

来自分类Dev

将UITextField添加到ScrollView

来自分类Dev

刷新时将UITextField添加到SubView

来自分类Dev

问:当我将UIScrollView添加到UIView时,scrollView无法滚动

来自分类Dev

将图像添加到水平分页 UIScrollView

Related 相关文章

热门标签

归档