当我缩放时我遇到了一些问题,当我缩放时,下一个UIImageView会在我放大的UIImageView之上。
我将UIImageView加载到我在控制器中调用的UIScrollView的子类中。 加载功能和滚动功能完美运行。
第一个问题是当我放大下一个UIImageView超过我放大的那个时。
所以我试图把每个UIImageView放在一个UIView中,我把它放到ScrollView中,但是它做了同样的事情......
我遇到的第二个问题是当我放大时,我的滚动不再有效了。
- (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
// Return the view that you want to zoom
NSLog(@"viewForZoomingInScrollView - current : %d",self.scrollPageControl.currentPage);
return [[[[self.productImageScrollView subviews]objectAtIndex:0] subviews]objectAtIndex:self.scrollPageControl.currentPage];
//return [[self.productImageScrollView subviews] objectAtIndex:0];
//return [self.productImageScrollView getSubViewsByPage:[NSNumber numberWithInteger:[self.scrollPageControl currentPage]]];
第一个返回返回UIView的UIImageView 第二次归还UIView 当我不使用UIView时,第三个返回UIImageView。
我看到了很多类似的问题,但我试过没有帮助过我...... 所以我打电话给你! Ty问我是不是很清楚。
答案 0 :(得分:0)
尝试创建一个UIView *(可能称之为contentView)并将所有UIImageView作为子视图放到该contentView
然后,在
上- (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
return contentView;
}
答案 1 :(得分:0)
您是否在方法中返回该视图?这是关键部分......
滚动视图仅缩放您在viewForZooming中返回的视图,因此如果您要返回其中一个图像,则其余图像将不会缩放。 我假设你按顺序添加它们,所以当缩放的那个放大时,下一个将保持静止,因此在当前的那个上面
尝试将所有图像添加到视图中,然后在viewForZoomingInScrollView中返回相同的视图:
答案 2 :(得分:0)
这是确定要缩放的对象的功能:
mask1 = df['tag'].isin([2,3])
out = np.setdiff1d(df['Unique_id'].unique(), df.loc[mask1, 'Unique_id'].unique()).tolist()
print (out)
['b', 'c', 'd']
然后,您可以将所需对象添加到该对象作为子视图,它将缩放到:
func viewForZooming(in scrollView: UIScrollView) -> UIView?{
return scrollImageView
}