快速而简单的问题。我有一个带UIButtons的滚动视图,当你按下它们时会翻转。按钮必须显示productImage。因为这些图像来自Web服务,所以我必须使用AsyncImageView加载它们。唯一的问题是,当我将AsyncImageView添加为按钮的子视图时,按钮无法再按下。
如何通过AsyncImageView进行操作?在按钮后面添加AsyncImageView当然不是一种选择。
for (int i = 1; i < [searchResults2 count]; i++) {
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(((10*i) + ((i - 1)*90)), 40, 90, 90)];
[button setBackgroundColor:[UIColor whiteColor]];
[button setAlpha:0.9];
CGRect frame;
frame.size.width=90;
frame.size.height=90;
frame.origin.x=0;
frame.origin.y=0;
AsyncImageView* asyncImage = [[[AsyncImageView alloc] initWithFrame:frame] autorelease];
asyncImage.tag = 999;
[asyncImage loadImageFromURL:[NSURL URLWithString:[[searchResults2 objectAtIndex:(i-1)]
searchObjectImageUrl]]];
[button addSubview:asyncImage.view];
button.tag = i;
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
[scrollView addSubview:button];
}
提前致谢。
编辑:解决方法是不使用AsyncImageview并为图像编写简单的下载程序。
答案 0 :(得分:2)
试试这个:
asyncImage.userInteractionEnabled = NO;
这会导致任何“命中”asyncImage的触摸事件传递到z-order中的userInteractionEnabled设置为YES的下一个对象。
-S
答案 1 :(得分:0)
您可以使用以下内容
asyncImage.userInteractionEnabled = NO;
asyncImage.exclusiveTouch = NO;