您可以使用 XCode 4.5 中的自动布局来做到这一点但是您在 viewDidAppear 中配置 UIScrollView
我也在带有图像的静态 UITableView 中执行此操作。
将您的图像命名为 timg1.png、timg2.png....
在你的 ControllerView.h 文件中
@property (weak, nonatomic) IBOutlet UIScrollView *Sv1;
@property (weak, nonatomic) IBOutlet UIPageControl *Pc1;
在您的 ControllerView.m 文件中
-(void)viewDidAppear:(BOOL)animated
{
//Scrollview
Sv1.delegate = self;
Sv1.contentSize = CGSizeMake(260, 176);
[self.Sv1 setBackgroundColor:[UIColor clearColor]];
// ScrollViewGarten.frame = CGRectMake(9, 11, 283, 170);
[Sv1 setCanCancelContentTouches:NO];
Sv1.multipleTouchEnabled = NO;
Sv1.indicatorStyle = UIScrollViewIndicatorStyleWhite;
Sv1.clipsToBounds = YES;
Sv1.scrollEnabled = YES;
Sv1.pagingEnabled = YES;
NSUInteger nimagesTextil = 0;
CGFloat cxTextil = 0;
for (; ; nimagesTextil++) {
NSString *imageNameTextil = [NSString stringWithFormat:@"timg%d.png", (nimagesTextil + 1)];
UIImage *imageTextil = [UIImage imageNamed:imageNameTextil];
if (imageTextil == nil) {
break;
}
UIImageView *imageViewTextil = [[UIImageView alloc] initWithImage:imageTextil];
CGRect rect = imageViewTextil.frame;
rect.size.height = 176;
rect.size.width = 260;
rect.origin.x = ((Sv1.frame.size.width - imageTextil.size.width) / 2) + cxTextil;
rect.origin.y = ((Sv1.frame.size.height - imageTextil.size.height) / 2);
imageViewTextil.frame = rect;
[Sv1 addSubview:imageViewTextil];
cxTextil += Sv1.frame.size.width;
}
self.Pc1.numberOfPages = nimagesTextil;
[Sv1 setContentSize:CGSizeMake(cxTextil, [Sv1 bounds].size.height)];
self.Pc1.currentPage = 0;
}