UIScrollView没有出现在运行中

时间:2014-05-27 15:03:54

标签: objective-c ios7 xcode5

我有一个UIScrollView有一个插座,在我的实现文件中,我甚至以编程方式添加了我需要的对象。当我运行我的程序时,NSLog表示它已经启动,但在模拟器上,它什么也没显示。甚至没有任何滚动动作可见。

之前我已经完成了它,并与其他视图控制器进行了双重检查,所有内容似乎排成一行,但它仍然不想显示。我在.h和.m中声明了IBOutlet我在数组的方法中设置了一个NSDictionary,其中包含了我在scrollview上需要的对象。

然后我告诉它将它添加到子视图[self.scrollview addSubview:someView]; someview是主要对象,其他对象位于顶部。这之前有用,但由于某种原因,此时无法正常工作。我还确保将数组的方法添加到viewDidLoad方法中。我在故事板中连接了插座,但没有得到视觉效果。我正在使用lorempixel来填充图像,如前所述,它正在处理另一个VC但不在此处。这可能是我想念的简单事情。谢谢你的帮助。

- (void)addItemsToThis:(NSMutableArray *)anArray {

int i = 0;
float contentHeight = firstRowGutterY;

for (NSDictionary *item in checkout) {
    int row = (int) i / 3;
    float xOffset = i % 3 == 0 ? firstColumnGutterX : (i % 3) * itemContainerWidth + (xGutter * (i % 3) + firstColumnGutterX);
    float yOffset = i < 3 ? firstRowGutterY : firstRowGutterY + (row * itemContainerHeight) + (row * yGutter);

    UIView *itemCont = [[UIView alloc] initWithFrame:CGRectMake(xOffset, yOffset, itemContainerWidth, itemContainerHeight)];
    [itemCont setBackgroundColor:[UIColor clearColor]];

    UIView *whiteBox = [[UIView alloc] initWithFrame:CGRectMake(0, 6, 88, 112)];
    [whiteBox setBackgroundColor:[UIColor whiteColor]];

    UIButton *delete = [[UIButton alloc]initWithFrame:CGRectMake(70, 2, 24, 26)];


    UIImage *main = [UIImage imageWithData:[NSData dataWithContentsOfURL:[item objectForKey:@"image"]]];
    UIButton *imageBtn = [[UIButton alloc]initWithFrame:CGRectMake(6, 6, 78, 78)];
    [imageBtn setBackgroundImage:main forState:UIControlStateNormal];

    [whiteBox addSubview:imageBtn];
    [itemCont addSubview:whiteBox];
    [itemCont addSubview:delete];

    [self.scrollview addSubview:itemCont];

    i++;

    if (i % 3 == 0) {
        contentHeight += itemContainerHeight + yGutter;
    }
    NSLog(@"%f", contentHeight);
}
self.scrollview.contentSize = CGSizeMake(self.scrollview.contentSize.width, contentHeight);

}

1 个答案:

答案 0 :(得分:0)

请检查您是否错过了以下任何步骤 -

  1. 故事板 - 禁用自动布局。 UIScrollView和自动布局之间的关系与自动布局的其他方面不同。有关解决方案,请参阅此thread -

    enter image description here

  2. View Controller上 - 选择自由形式&#39;

    enter image description here

  3. viewDidLoad中,假设您在自己设置了相同的高度 故事板的ViewScroll View。  

     [myScroll setScrollEnabled:YES];
     [myScroll setContentSize:CGSizeMake(320, 3000)];

  4. 如果无效,请尝试从中实现简单的Scroll View 刮。你最终会找出问题所在。