我有一个UIScrollView,里面有UIViews,而那些UIViews是UIImageViews。我正在尝试访问UIImageViews
。
为了概念验证,我有一个带有UIView的滚动视图,其中包含一个UIImageView,两者的标签都设置为0。
代码:
-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
UIView *currentView = (UIView *)[scrollView viewWithTag:0];
UIImageView *currentImageView = (UIImageView *)[currentView viewWithTag:0];
[self bobbleView:currentImageView];
}
然后我试图连续上下UIImageView(这本身就是另一个问题,我只能把它弄到一次,所以我就把那个代码留下了),但是发生的事情是< strong>整个UIScrollView及其子视图正在浮动。
那段代码:
-(void)bobbleView:(UIView *)viewIn{
viewIn.transform = CGAffineTransformMakeScale(1.2, 1.2);
[UIView animateWithDuration:1 animations:^{
viewIn.transform = CGAffineTransformMakeScale(1.0, 1.0);
}];
}
有什么想法吗?
答案 0 :(得分:1)
viewWithTag
doc说:
Discussion
This method searches the _current view_ and all of its subviews for the specified view.
(强调我的)
您所看到的是:
(UIImageView *)[currentView viewWithTag:0]
返回
currentView
HTH
答案 1 :(得分:0)
是..为视图指定唯一标记,并且彼此不同。我敢打赌,如果你在bobbleView的调用中设置一个断点,你的UIImageView对象将是你的UiScrollView而不是imageview,也不是UiView ...使用简单的标签,比如UXiews的100X fir和imageview的200X