zoukankan      html  css  js  c++  java
  • 添加app第一次启动页面

    一、添加几个成员变量

    @interface hDisplayView ()<UIScrollViewDelegate>
    {
        UIScrollView    *_bigScrollView;
        NSMutableArray  *_imageArray;
        UIPageControl   *_pageControl;
    }

    二、添加构造方法

    -(instancetype)initWithFrame:(CGRect)frame
    {
        self = [super initWithFrame:frame];
        if (self) {
            _imageArray = [@[@"闪屏1.png",@"闪屏2.png", @"闪屏3.png",@"闪屏4.png"]mutableCopy];
            
    //        _imageArray = [NSMutableArray arrayWithObjects:@"闪屏1.png",@"闪屏2.png", @"闪屏3.png",@"闪屏4.png", nil];
            
            UIScrollView *scrollView = [[UIScrollView alloc]initWithFrame:CGRectMake(0, 0, MainScreen_width, MainScreen_height)];
            
            scrollView.contentSize = CGSizeMake((_imageArray.count + 1)*MainScreen_width, MainScreen_height);
            //设置反野效果,不允许反弹,不显示水平滑动条,设置代理为自己
            scrollView.pagingEnabled = YES;//设置分页
            scrollView.bounces = NO;
            scrollView.showsHorizontalScrollIndicator = NO;
            scrollView.delegate = self;
            [self addSubview:scrollView];
            _bigScrollView = scrollView;
            
            for (int i = 0; i < _imageArray.count; i++) {
                UIImageView *imageView = [[UIImageView alloc]init];
                imageView.frame = CGRectMake(i * MainScreen_width, 0, MainScreen_width, MainScreen_height);
                UIImage *image = [UIImage imageNamed:_imageArray[i]];
                imageView.image = image;
                
                [scrollView addSubview:imageView];
            }
            
            UIPageControl *pageControl = [[UIPageControl alloc]initWithFrame:CGRectMake(MainScreen_width/2, MainScreen_height - 60, 0, 40)];
            pageControl.numberOfPages = _imageArray.count;
            pageControl.backgroundColor = [UIColor clearColor];
            [self addSubview:pageControl];
            
            _pageControl = pageControl;
            
            //添加手势
            UITapGestureRecognizer *singleRecognizer;
            singleRecognizer = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(handleSingleTapFrom)];
            singleRecognizer.numberOfTapsRequired = 1;
            [scrollView addGestureRecognizer:singleRecognizer];
            
        }
        
        return self;
    }

    三、添加一个手势,在周到最后一页的时候,让整个view隐藏

    -(void)handleSingleTapFrom
    {
        if (_pageControl.currentPage == 3) {
            
            self.hidden = YES;
            
        }
    }

    四、添加一个scrollview的代理方法,让pagecontrol在scrollview的中间位置

    -(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
    {
        if (scrollView == _bigScrollView) {
            
            CGPoint offSet = scrollView.contentOffset;
            
            _pageControl.currentPage = offSet.x/(self.bounds.size.width);//计算当前的页码
            [scrollView setContentOffset:CGPointMake(self.bounds.size.width * (_pageControl.currentPage), scrollView.contentOffset.y) animated:YES];
            
        }
        
        if (scrollView.contentOffset.x == (_imageArray.count) *MainScreen_width) {
            
            self.hidden = YES;
            
        }
        
    }
    
  • 相关阅读:
    Excel如何根据基类标红重复内容
    使用FRP配置Windows远程控制
    CentOS 7安装gevent
    CentOS7安装pip
    把音频文件压缩变小的方法
    Linux中nohup和&的用法和区别
    Windows下安装redis服务
    TFS解锁命令
    linux下用rpm 安装jdk
    avascript的匿名函数
  • 原文地址:https://www.cnblogs.com/hero11223/p/5579574.html
Copyright © 2011-2022 走看看