我有一个UIScrollView来平移一些照片。加载视图后,当我触摸页面(在任何地方)时,它使我的内部视图(UIImageView)上升。 这是加载时的照片(绿色是内部UIView,黑色是UIScrollView)。
以下是生成它的代码:
将视图添加到滚动视图:
- (void)loadPage:(NSInteger)page {
CGRect frame = self.scrollView.bounds;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
// 3
NSURL *eventImageURL = [NSURL URLWithString:[[self.pageImages objectAtIndex:page] imageURL]];
UIImageView *newPageView = [[UIImageView alloc]init];
[newPageView setImageWithURL:eventImageURL placeholderImage:nil usingActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
newPageView.contentMode = UIViewContentModeScaleAspectFit;
newPageView.frame=frame;
newPageView.tag=page;
newPageView.userInteractionEnabled=NO;
newPageView.backgroundColor=[UIColor greenColor];
newPageView.clipsToBounds=YES;
[self.scrollView addSubview:newPageView];
}
滚动视图设置:
- (void)viewDidLoad {
[super viewDidLoad];
CGSize scrollableSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height);
[self.scrollView setContentSize:scrollableSize];
// Do any additional setup after loading the view from its nib.
// 1
NSInteger pageCount = self.pageImages.count;
// 2
self.pageControl.currentPage = 0;
self.pageControl.numberOfPages = pageCount;
// 3
self.pageViews = [[NSMutableArray alloc] init];
for (NSInteger i = 0; i < pageCount; ++i) {
[self.pageViews addObject:[NSNull null]];
}
self.scrollView.minimumZoomScale=1.0;
self.scrollView.maximumZoomScale=2.0;
self.scrollView.clipsToBounds=YES;
self.scrollView.contentSize=CGSizeMake(1280, 960);
self.scrollView.tag=10;
[self.scrollView setUserInteractionEnabled:YES];
[self.scrollView setMultipleTouchEnabled:YES];
}
答案 0 :(得分:0)
找到它。 在viewdidload上我设置:
self.automaticallyAdjustsScrollViewInsets = NO;
一切正常。