• ##DAY5 UIControl及其子类


    ##DAY5 UIControl及其子类

    #pragma mark ———————UIControl———————————

    UIControl初识:

    1)UIControl是有控制功能的视图(比如UIButton、UISlider、UISegmentedControl等)的父类

    2)只要跟控制有关的控件都是继承于该类

    3)UIControl这个类通常我们并不直接使用,而是使用其子类

    事件响应的三种形式:基于触摸、基于值、基于编辑

    注意:

    UIBUtton基于触摸,UITextField基于编辑,其他继承自UIControl的基于值

    Control的事件处理:

    //当控件之内触摸抬起时触发

    UIControlEventTouchUpInside

    //当控件的值发⽣变化时。⽤于滑块、分段控件等控件。

    UIControlEventValueChanged

    //⽂本控件中开始编辑时

    UIControlEventEditingDidBegin

    //⽂本控件中的⽂本被改变

    UIControlEventEditingChanged

    //⽂本控件中编辑结束时

    UIControlEventEditingDidEnd

    UIControl常用方法:

    1)添加一个事件

    - (void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

    2)移除一个事件

    - (void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents;

    #pragma mark ———————UISegmentedControl———————————

    UISegmentedControl的属性和方法:

    属性:

    frame 布局

    selectedSegmentIndex 设置默认被选中的分段

    tintColor 设置标签风格颜色,注意:这个风格颜色会影响标签的文字和图片

    momentary 点击后是否恢复原样,默认NO,分段控件的默认行为是,一旦按钮被选中就一直保持,直到另外一个按钮被选中为止。你可以改变这种默认的行为,变成按钮按下后很快就自动释放

    segmentedControlStyle 分段控件的样式,iOS 7.0以后无效

    方法:

    initWithItems: 独有的初始化方法,用来创建多个分段,是一个数组

    selectedSegmentAtIndex: 指定被选中的分段,默认情况下,除非你指定,否则不会有任何片段被选中。

    setTitle:forSegmentAtIndex: 为指定下标的分段设置图片

    insertSegmentWithTitle:atIndex:animated: 在指定位置下插入分段

    removeSegmentAtIndex:animated: 删除指定分段

    removeAllSegments 删除所有分段

    addTarget:action:forControlEvents: 添加事件

    /*

     注意:controlEvent为UIControlEventValueChanged

     原因:分段控件本质上通过数据管理分段,所以使用valueChanged属性来触发事件,即数组下标的变化

     */

    注意:图像不会自动调整大小,图片多大就会原生地显示多大,所以你要通知做图的美工大小要精确。

    #pragma mark ———————UIpageControl———————————

    初始化方法:

    initWithFrame: 高度设置无效

    属性:

    numberOfPages 页面数目

    currentPage 当前页数 当前页数,默认第一页会被选中。页面索引从 0 开始。

    hidesForSinglePage 默认情况下,即使只有一个页面,指示器也会显示进来。如果要在仅有一个页面的情况下隐藏指示器,可以将hideForSinglePage 的值设为 YES。

    defersCurrentPageDisplay 延迟更新当前指示器当前指示页,必须调用控件的[myPageControl updateCurrentPageDisplay]; 来更新当前页

    pageIndicatorTintColor 未选中页面圆点的颜色

    currentPageIndicatorTintColor 当前页面的圆点的颜色

    sizeForNumberOfPages 通过页数得到控制器大小, 这个属性用于页数会变化的情况下进行大小动态处理,返回一个CGSize类型的值

    显示控件:addSubview:

    触发事件:

    addTarget:action:forControlEvents:

    注意:当用户点触分页控件时,会产生一个 UIControlEventVakueChanged 事件

  • 相关阅读:
    剑指 Offer 46. 把数字翻译成字符串
    leedcode:27. 移除元素
    1052. 爱生气的书店老板(滑动窗口)
    剑指 Offer 56
    剑指 Offer 11. 旋转数组的最小数字(二分)
    1919年巴黎和会顾维钧英语演讲稿
    状语从句
    定语从句
    名词性从句
    并列句
  • 原文地址:https://www.cnblogs.com/chongyu/p/5192429.html
Copyright © 2020-2023  润新知