Objective c UIScrollview问题
我正在尝试用小图像实现uiscrollviewObjective c UIScrollview问题,objective-c,ios5,Objective C,Ios5,我正在尝试用小图像实现uiscrollview 我需要uiscrollview在每一端的最后一个图像在滚动结束时保持在中间,留下一边空白。现在,滚动结束后,最后一个图像仍保留在侧面 我需要知道哪个图像位于scollview的中心,以便在其上应用阴影 jugadorSlide.pagingEnabled = YES; NSError *error = nil; fotosJugadores = [[NSFileManager defaultManager] contentsOfDirectoryA
jugadorSlide.pagingEnabled = YES;
NSError *error = nil;
fotosJugadores = [[NSFileManager defaultManager] contentsOfDirectoryAtPath: @"/Users/exular/Developer/GBC/exular/GBC/Caras/" error: &error];
NSInteger numberOfViews = [fotosJugadores count];
for (int i = 0; i < numberOfViews; i++) {
UIImage *myImage = [UIImage imageNamed:[fotosJugadores objectAtIndex:i]];
CGFloat yOrigin = i * myImage.size.width;
UIImageView *awesomeView = [[UIImageView alloc] initWithFrame:CGRectMake(yOrigin, 0, myImage.size.width, myImage.size.height)];
awesomeView.alpha = 0.5;
awesomeView.image = myImage;
[self.jugadorSlide addSubview:awesomeView];
awesomeView=nil;
}
jugadorSlide .contentSize = CGSizeMake(65 * numberOfViews,78);
jugadorSlide.layer.cornerRadius = 11;
jugadorSlide.layer.masksToBounds = YES;
jugadorside.paginabled=YES;
n错误*错误=nil;
fotosJugadores=[[NSFileManager defaultManager]目录目录路径:@”/Users/exular/Developer/GBC/exular/GBC/Caras/“error:&error];
NSInteger numberOfViews=[fotosJugadores计数];
对于(int i=0;i
非常感谢您的帮助。要使第一个和最后一个图像位于中间,只需在第一个图像之前和最后一个图像之后添加一个空格即可。换句话说:从
65
开始您的yOrigin
并将65
添加到contentSize
宽度(我假设65
是您的图像宽度):
要找出哪个图像位于中间,请在UIScrollViewDelegate方法中添加以下内容ScrollViewDiEndDecelling:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {
int currentIndex = roundf(scrollView.contentOffset.x / 65) - 1;
UIImageView *currentImage = [scrollView viewWithTag:currentIndex];
}
要轻松获取当前图像,请在创建图像时向图像添加标记:
...
awesomeView.tag = i;
...
...
awesomeView.tag = i;
...