zoukankan      html  css  js  c++  java
  • UIView常见的属性和方法

    一、 UIView的常见属性
    1. superview
    @property(nonatomic,readonly) UIView *superview;
    获得自己的父控件对象
    2. subviews
    @property(nonatomic,readonly,copy) NSArray *subviews;
    获得自己的所有子控件对象
    3. tag
    @property(nonatomic) NSInteger tag;
    控件的ID标识,父控件可以通过tag来找到对应的子控件
    4. frame
    @property(nonatomic) CGRect frame;
    控件所在矩形框的位置和尺寸(以父控件的左上角为坐标原点
    5. bounds
    @property(nonatomic) CGRect bounds;
    控件所在矩形框的位置和尺寸(以自己左上角为坐标原点,所以bounds的xy永远为0
    6. center
    @property(nonatomic) CGPoint center;
    控件中点的位置(以父控件的左上角为坐标原点
    7. transform
    @property(nonatomic) CGAffineTransform transform;
    控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)


    二、UIButton的使用总结

    1. 初始化
    最普通的初始化方法
    UIButton *btn = [[UIButton alloc] initWithFrame:rect];
    快速初始化
    UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    type参数用来指定按钮的类型,一共有6种选择:
    UIButtonTypeCustom:无类型,按钮的内容需要自定义
    UIButtonTypeRoundedRect:圆矩形边框
    UIButtonTypeDetailDisclosure:
    UIButtonTypeInfoLight:
    UIButtonTypeInfoDark:
    UIButtonTypeContactAdd:

    2. 设置文字
    设置按钮在默认状态下显示的文字(第2个state参数用来指定按钮的状态)
    [btn setTitle:@"登录" forState:UIControlStateNormal];
    设置按钮在长按状态下显示的文字
    [btn setTitle:@"登录2" forState:UIControlStateHighlighted];

    3. 设置文字颜色
    设置按钮在默认状态下的文字颜色为红色
    [btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    修改第2个参数就可以设置其他状态下的文字颜色

    4. 设置字体
    先初始化字体对象,再设置字体
    // 使用系统自带的字体
    UIFont *font = [UIFont systemFontOfSize:16];
    // 设置字体
    btn.titleLabel.font = font;
    也可以使用其他字体
    UIFont *font = [UIFont fontWithName:@"Marker Felt" size:16];

    5. 设置背景颜色
    设置背景颜色为橙色
    [btn setBackgroundColor:[UIColor orangeColor]];

    6. 设置背景图片
    先加载图片,再设置图片
    // 加载图片
    UIImage *image = [UIImage imageNamed:@"lufy.png"];
    // 设置默认状态下的背景图片
    [btn setBackgroundImage:image forState:UIControlStateNormal];
    修改第2个参数就可以设置其他状态下的背景图片

    7. 添加监听器
    [btn addTarget:self action:@selector(click:)
    forControlEvents:UIControlEventTouchUpInside];
    最后一个参数用来指定事件类型,这里传入的是单击事件
    按钮被单击后,就会调用self的click:方法,并且将按钮作为方法的第一个参数传入
    - (void) click:(UIButton *)btn
    {
    }

    三、 UIView封装的简单动画
    在iOS中想实现一些简单的动画效果(平移、缩放、旋转),特别简单
    你只需要告诉iOS系统:哪些代码造成的改变需要使用动画效果就可以了
    [UIView beginAnimations:nil context:nil];
    ……需要执行动画效果的代码……
    [UIView commitAnimations];

    四、 UITextField
    1. 让文本框聚焦(弹出键盘)
    - (BOOL)becomeFirstResponder;

    2. 让文本框失去焦点(退出键盘)
    - (BOOL)resignFirstResponder;

    3. 代理方法简介
    // 当文本框开始获得焦点的时候调用
    - (void)textFieldDidBeginEditing:(UITextField *)textField;
    // 当用户失去焦点的时候调用
    - (void)textFieldDidEndEditing:(UITextField *)textField;
    // 在文本框准备聚焦的时候调用,返回NO代表不允许聚焦(编辑)
    - (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
    // 在文本框准备失去焦点(退出键盘)的时候调用,返回YES代表允许退出键盘
    - (BOOL)textFieldShouldEndEditing:(UITextField *)textField;
    // 在用户每次输入的时候都会调用,返回YES代表允许输入
    - (BOOL)textField:(UITextField *)textField
    shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

    五、UIScrollView

    一、基本使用
    1. 作用
    UIScrollView可以用于显示多于一个屏幕的内容,超出屏幕范围的内容可以通过滑动进行查看

    2. 常见属性
    CGSize contentSize :设置UIScrollView的滚动范围
    CGPoint contentOffset :UIScrollView当前滚动的位置
    UIEdgeInsets contentInset :这个属性可以在四周增加滚动范围


    3. 其他属性
    BOOL bounces 是否有弹簧效果
    BOOL scrollEnabled 是否能滚动
    BOOL showsHorizontalScrollIndicator 是否显示水平方向的滚动条
    BOOL showsVerticalScrollIndicator 是否显示垂直方向的滚动条
    UIScrollViewIndicatorStyle indicatorStyle 设定滚动条的样式
    BOOL dragging 是否正在被拖拽
    BOOL tracking 当touch后还没有拖动的时候值是YES,否则NO
    BOOL decelerating 是否正在减速
    BOOL zooming 是否正在缩放

    二、手势缩放

    1. 设置UIScrollView的id<UISCrollViewDelegate> delegate代理对象
    2. 设置minimumZoomScale :缩小的最小比例
    3. 设置maximumZoomScale :放大的最大比例
    4. 让代理对象实现下面的方法,返回需要缩放的视图控件
    - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
    跟缩放相关的常用方法还有
    正在缩放的时候调用
    -(void)scrollViewDidZoom:(UIScrollView *)scrollView
    缩放完毕的时候调用
    -(void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale

    三、分页效果
    设置pagingEnabled=YES即可,UIScrollView会被分割成多个独立页面,用户的滚动体验则变成了页面翻转
    一般会配合UIPageControl增强分页效果,UIPageControl常用属性:
    NSInteger numberOfPages : 总页数
    NSInteger currentPage : 当前的页码
    BOOL hidesForSinglePage : 当只有一页的时候,是否要隐藏视图
    监听UIPageControl的页面改变:
    // 添加监听器
    [pageControl addTarget:self action:@selector(pageChange:)
    forControlEvents:UIControlEventValueChanged];
    // 监听方法
    - (void)pageChange:(UIPageControl *)pageControl
    {
    }

    四、图片全屏浏览例子

  • 相关阅读:
    FileWriter简单用法并记录日志
    jquery 替换元素函数
    jquery ajax应用
    jquery 操作对象和集合
    jquery 管理包装元素集合
    jQuery 过滤选择器
    @Html.Action()
    ASP.NET MVC之Html.RenderAction
    MVC5中路由新特性
    MVC5学习整理
  • 原文地址:https://www.cnblogs.com/yyh123/p/3358378.html
Copyright © 2011-2022 走看看