zoukankan      html  css  js  c++  java
  • 学习IOS开发UI篇--UIScrollView/delegate/pagecontrol/UITimer

    1.UIscrollView的属性
    ==================================================
    1.1 常见属性
    @property(nonatomic) CGPoint contentOffset;
    这个属性用来表示UIScrollView滚动的位置
     
    @property(nonatomic) CGSize contentSize;
    这个属性用来表示UIScrollView内容的尺寸,滚动范围(能滚多远)
     
    @property(nonatomic) UIEdgeInsets contentInset;
    这个属性能够在UIScrollView的4周增加额外的滚动区域
    1.2 其他属性
    @property(nonatomic) BOOL bounces;
    设置UIScrollView是否需要弹簧效果
     
    @property(nonatomic,getter=isScrollEnabled) BOOL scrollEnabled;
    设置UIScrollView是否能滚动
     
    @property(nonatomic) BOOL showsHorizontalScrollIndicator;
    是否显示水平滚动条
     
    @property(nonatomic) BOOL showsVerticalScrollIndicator;
    是否显示垂直滚动条
     
    2.UIScrollView的缩放和分页
    ==================================================
    1.代理模式
     
    1.1代理思想两个思想

        1).监听思想:B监听A发生了什么事情

        2).通知思想:A发生了一些事情,要通知B去做

    1.2scrollView的代理使用

        1).如何成为代理(三步)

            *声明协议

            *设置代理对象self.scrollView.delegate = self;

            *实现协议方法

        2).代理监听scrollView的拖拽事件

        3).用代理实现缩放

            *成为UIScrollView的代理()

            *设置缩放对象(通过viewForZoomingInScrollView方法)

            *设置缩放为范围(maximumZoomScaleminimumZoomScale

    2.分页

    1.只要将UIScrollView的pageEnabled属性设置为YES,UIScrollView会被分割成多个独立页面,里面的内容就能进行分页展示
     
    2.一般会配合UIPageControl增强分页效果,UIPageControl常用属性如下
    一共有多少页
    @property(nonatomic) NSInteger numberOfPages;
     

     当前显示的页码

    @property(nonatomic) NSInteger currentPage;
     

    只有一页时,是否需要隐藏页码指示器

    @property(nonatomic) BOOL hidesForSinglePage;

    其他页码指示器的颜色
    property(nonatomic,retain) UIColor *pageIndicatorTintColor;
    当前页码指示器的颜色
    @property(nonatomic,retain) UIColor *currentPageIndicatorTintColor;
    3.定时器
    ==================================================

    + (NSTimer *)timerWithTimeInterval:(NSTimeInterval)ti target:(id)aTarget selector:(SEL)aSelector userInfo:(id)userInfo repeats:(BOOL);

    - (void)invalidate;

    通过invalidate方法可以停止定时器的工作,一旦定时器被停止了,就不能再次执行任务。只能再创建一个新的定时器才能执行新的任务
  • 相关阅读:
    Linux日志文件utmp、wtmp、lastlog、messages
    Linux日志五大命令详解
    php 函数合并 array_merge 与 + 的区别
    MySQL对数据表进行分组查询(GROUP BY)
    如何在mysql中查询每个分组的前几名
    Autojump:一个可以在 Linux 文件系统快速导航的高级 cd 命令
    linux 查看磁盘空间大小
    js刷新页面方法大全
    [知乎有感] 读研到底为了什么,值不值得?
    [Hadoop] 在Ubuntu系统上一步步搭建Hadoop(单机模式)
  • 原文地址:https://www.cnblogs.com/zhaoyan/p/3756206.html
Copyright © 2011-2022 走看看