0

我有一个隐藏的子视图,直到用户单击按钮(子视图是 UIScrollview)。我想以编程方式在该视图中添加一个按钮网格。我不确定如何指定将按钮添加到哪个视图。我正在尝试关注http://www.raywenderlich.com/130/how-to-write-a-custom-image-picker-like-uiimagepicker

滚动视图称为图形视图

这就是我所拥有的

 for(int i=0;i<64;i++)
{
UIImage *buttonImage=[UIImage imageNamed:@"image.png"];

    [arrayOfThumbnails addObject:buttonImage];  
}



for(int i = 0; i < arrayOfThumbnails.count; ++i) {

    UIImage *thumb = [arrayOfThumbnails objectAtIndex:i];
    UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom];
    button.frame = CGRectMake(column*100+24, row*80+10, 64, 64);
    [button setImage:thumb forState:UIControlStateNormal];
    [button addTarget:graphicView
               action:@selector(buttonClicked:)
     forControlEvents:UIControlEventTouchUpInside];
    button.tag = i;
    [graphicView addSubview:button];

    if (column == 2) {
        column = 0;
        row++;
    } else {
        column++;
    }

}

这是本教程中我唯一没有使用的部分......

[查看 setContentSize:CGSizeMake(320, (row+1) * 80 + 10)]; self.view = 视图;


4

1 回答 1

1

通过检查 [UIImage imageNamed:@"image.png"] 的返回值来确保 UIImage 有效

检查您的 NSMutableArray 是否已初始化

您的 for 循环看起来不寻常,请尝试更改为快速枚举

for (UIImage *thumb in arrayOfThumbnails) {
    // UIImage *thumb = [arrayOfThumbnails objectAtIndex:i]; <-- Not needed
    ...
} 

Is graphicView being added as a subview somewhere? Set graphicView.backgroundColor = [UIColor redColor] so you can see at least it's being added.

于 2013-02-08T18:49:04.180 回答