IOS_UI_UIScrollview UIPageControl结合 应用

#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;

    

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值