#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@end
#import "AppDelegate.h"
#import "MainViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
- (void) dealloc
{
[_window release];
[super dealloc];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
MainViewController *mainVC = [[MainViewController alloc]init];
self.window.rootViewController = mainVC;
[mainVC release];
return YES;
}
@interface MainViewController : UIViewController
@end
#import "MainViewController.h"
@interface MainViewController ()<UIScrollViewDelegate>
@property (nonatomic,retain)UIScrollView *scrollVeiw;
@property (nonatomic,retain)UIPageControl *pageControl;
@end
@implementation MainViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.scrollVeiw = [[UIScrollView alloc]initWithFrame:CGRectMake(20, 20, 335, 500)];
self.scrollVeiw.backgroundColor = [UIColor yellowColor];
[self.view addSubview:self.scrollVeiw];
[_scrollVeiw release];
//如果滑动的页数是4
NSInteger num = 4;
for (NSInteger i = 0 ; i < num; i++) {
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(i*335, 0, 335, 500)];
NSString *name = [NSString stringWithFormat:@"%ld.jpg",i];
imageView.image = [UIImage imageNamed:name];
[self.scrollVeiw addSubview:imageView];
[imageView release];
}
//设置滚动范围
self.scrollVeiw.contentSize = CGSizeMake(335*4, 0);
self.scrollVeiw.pagingEnabled = YES;
self.scrollVeiw.delegate = self;
//
//
self.pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(20,520,335,40)];
self.pageControl.backgroundColor = [UIColor blackColor];
//设置数量
self.pageControl.numberOfPages = num;
//设置点的颜色
//非当前选择的点的颜色
self.pageControl.pageIndicatorTintColor = [UIColor redColor];
[self.pageControl addTarget:self action:@selector(pageAction:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:self.pageControl];
[_pageControl release];
}
- (void)pageAction:(UIPageControl *)pageC
{
NSLog(@"换页");
//点击pageControl控制scrollView
self.scrollVeiw.contentOffset = CGPointMake(335*pageC.currentPage, 0);
//添加动画效果
[self.scrollVeiw setContentOffset:CGPointMake(335*pageC.currentPage, 0) animated:YES];
}
//宽度*页数=偏移量
//同scroll协议控制pagecontrol 知道偏移量 宽度 求页数
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
self.pageControl.currentPage = scrollView.contentOffset.x/335;
}