这里拿UIScrollView为例
#import <UIKit/UIKit.h>
@interface MyScrollview : UIView <
UIScrollViewDelegate
>
@property(nonatomic,strong)UIPageControl *newsPageControl;
@property(nonatomic,strong)NSArray *picArray;
-(void)setup;
@end
#import "MyScrollview.h"
@implementation MyScrollview
@synthesize newsPageControl;
@synthesize picArray;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.frame =CGRectMake(0.0, 0.0, 320.0, 175.0);
}
return self;
}
-(void)setup{
UIScrollView *newScrollView = [[UIScrollViewalloc]initWithFrame:CGRectMake(0.0,64.0, 320.0, 175.0)];
newScrollView.contentSize = CGSizeMake(320 * 3, 175);
newScrollView.showsVerticalScrollIndicator =NO;
newScrollView.delegate = self;
newScrollView.pagingEnabled = YES;
for (int i = 0; i < picArray.count; i ++) {
UIImageView *img = [[UIImageViewalloc]initWithFrame:CGRectMake(i *320.0, 0.0, 320.0,175.0)];
img.image = [UIImageimageNamed:picArray[i]];
[newScrollView addSubview:img];
}
[self addSubview:newScrollView];
newsPageControl = [[UIPageControlalloc]initWithFrame:CGRectMake(261,210, 39,37)];
newsPageControl.tintColor = [UIColorblackColor];
newsPageControl.currentPageIndicatorTintColor = [UIColorblueColor];
newsPageControl.currentPage =0;
newsPageControl.numberOfPages =3;
[selfaddSubview:newsPageControl];
}
-(void)scrollViewDidScroll:(UIScrollView*)scrollView{
[newsPageControlsetCurrentPage:fabs(scrollView.contentOffset.x/self.frame.size.width)];
}
@end
外部调用:MyScrollview * mycrollview = [[MyScrollviewalloc]init];
mycrollview.picArray = @[@"Phone29.png",@"Phone30.png",@"Phone31.png"];
[mycrollview setup];
NSLog(@"pic%@",mycrollview.picArray);
[self.view addSubview:mycrollview];