zoukankan      html  css  js  c++  java
  • UIScrollView手动轮播图

    没有添加定时器,所以不能达到自动的效果

    #import "JZScrollViewController.h"

    @interface JZScrollViewController ()

    @property (nonatomic, strong) UIScrollView * scrollView;
    @property (nonatomic, strong) UIPageControl * pageControl;

    @end

    @implementation JZScrollViewController

    - (void)viewDidLoad {
     

       [super viewDidLoad];
       
        self.view.backgroundColor = [UIColor whiteColor];
       
        [self initScroll];
        [self addImageWithtag:1000];
        [self initpageControl];
    }

    //初始化Scroll
    - (void)initScroll
    {
        UIScrollView * scroll = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
        scroll.showsHorizontalScrollIndicator = NO;
        scroll.showsVerticalScrollIndicator = NO;
        scroll.contentSize = CGSizeMake([UIScreen mainScreen].bounds.size.width * 3, 0);
        scroll.pagingEnabled = YES;
        scroll.delegate = self;
        self.scrollView = scroll;
        [self.view addSubview:self.scrollView];
    }

    //初始化pageControl
    - (void)initpageControl
    {
        UIPageControl * page = [[UIPageControl alloc] initWithFrame:CGRectMake(([UIScreen mainScreen].bounds.size.width - 200) / 2, 300 - 30, 200, 30)];
        page.numberOfPages = 3;
        page.currentPage = 0;
        page.currentPageIndicatorTintColor = [UIColor blackColor];
        page.pageIndicatorTintColor = [UIColor greenColor];
        page.userInteractionEnabled = NO;
       
        self.pageControl = page;
        [self.view addSubview:page];
    }

    //添加图片
    - (void)addImageWithtag:(NSInteger) tag
    {
        for(int i = 0; i < 3; i++){
            NSString * name = [NSString stringWithFormat:@"%d.jpg", i + 1];
            UIImage * image = [UIImage imageNamed:name];
            UIImageView * imageView = [[UIImageView alloc] initWithFrame:CGRectMake(i * [UIScreen mainScreen].bounds.size.width, 100, [UIScreen mainScreen].bounds.size.width, 200)];
            imageView.tag = tag + i;
            imageView.image = image;
           
            [self.scrollView addSubview:imageView];
        }
    }

    //滚动图片达到轮播图的效果
    - (void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        CGFloat scrollX = self.scrollView.contentOffset.x + [UIScreen mainScreen].bounds.size.width / 2;
        int num = (int)(scrollX / [UIScreen mainScreen].bounds.size.width);
        NSLog(@"%d", num);
        self.pageControl.currentPage = num;
    }

    @end
  • 相关阅读:
    【Win10开发】相对布局——RelativePanel控件
    【Win10开发】关于AutoSuggestBox
    【Win10开发】自定义标题栏
    线上服务器CPU100%排查
    Rest接口单元测试
    hibernate validator参数校验&自定义校验注解
    JsonView视图
    跨域(SpringBoot)
    Mybatis的分支选择和In循环
    CentOS6.5使用yum安装mysql
  • 原文地址:https://www.cnblogs.com/sjzlovecj/p/4661630.html
Copyright © 2011-2022 走看看