我有一个隐藏的子视图,直到用户点击一个按钮(子视图是UIScrollview)。我想以编程方式在该视图中添加按钮网格。我不知道如何指定按钮添加到哪个视图。我正在尝试关注http://www.raywenderlich.com/130/how-to-write-a-custom-image-picker-like-uiimagepicker
scrollview被称为graphicView
这就是我所拥有的
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++;
}
}
这是我在教程中没有使用的唯一部分......
[view setContentSize:CGSizeMake(320,(row + 1)* 80 + 10)]; self.view = view;
答案 0 :(得分:1)
通过检查[UIImage imageNamed:@“image.png”]的返回值确保UIImage有效
检查您的NSMutableArray是否已初始化
您的for循环看起来不寻常,请尝试更改为快速枚举
for (UIImage *thumb in arrayOfThumbnails) {
// UIImage *thumb = [arrayOfThumbnails objectAtIndex:i]; <-- Not needed
...
}
是否将graphicView作为子视图添加到某个地方?设置graphicView.backgroundColor = [UIColor redColor],这样你至少可以看到它被添加。