您当前的位置: 首页 >  ui

white camel

暂无认证

  • 3浏览

    0关注

    442博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

UI 一一 UI基础知识

white camel 发布时间:2017-08-23 20:01:46 ,浏览量:3

UIView的常用方法
  • 获取父/子控件
    1. @property(nonatomic,readonly) UIView *superview; 获得自己的父控件对象
    2. @property(nonatomic,readonly,copy) NSArray *subviews; 获得自己的所有子控件对象
    3. @property(nonatomic) NSInteger tag; 控件的ID(标识),父控件可以通过tag来找到对应的子控件。
    4. @property(nonatomic) CGAffineTransform transform; 控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)
  • 添加删除控件
    1. - (void)addSubview:(UIView *) view;添加一个子控件view
    2. - (void)removeFromSuperview; 从父控件中移除
    3. - (UIView *)viewWithTag:(NSInteger)tag; 根据一个tag标识找出对应的控件(一般都是子控件)
  • 控件的位置
    1. @property(nonatomic) CGRect frame; 控件矩形框在父控件中的位置和尺寸(以父控件的左上角为坐标原点)
    2. @property(nonatomic) CGRect bounds; 控件矩形框的位置和尺寸(以自己左上角为坐标原点,所以bounds的x、y一般为0)
    3. @property(nonatomic) CGPoint center; 控件中点的位置(以父控件的左上角为坐标原点)
UIImageView
  • UIImageView的常用属性

    • @property(nonatomic,retain) UIImage *image; 显示的图片
    • @property(nonatomic,copy) NSArray *animationImages; 显示的动画图片
    • @property(nonatomic) NSTimeInterval animationDuration; 动画图片的持续时间
    • @property(nonatomic) NSInteger animationRepeatCount; 动画的播放次数(默认是0,代表无限播放)
  • 动画

    • - (void)startAnimating; 开始动画
    • - (void)stopAnimating; 停止动画
    • - (BOOL)isAnimating; 是否正在执行动画
  • contentMode属性

    1. 带有scale单词的:图片有可能会拉伸
      • UIViewContentModeScaleToFill
        • 将图片拉伸至填充整个imageView
        • 图片显示的尺寸跟imageView的尺寸是一样的
    2. 带有aspect单词的:保持图片原来的宽高比

      • UIViewContentModeScaleAspectFit
        • 保证刚好能看到图片的全部
      • UIViewContentModeScaleAspectFill
        • 拉伸至图片的宽度或者高度跟imageView一样
    3. 没有scale单词的:图片绝对不会被拉伸,保持图片的原尺寸

      • UIViewContentModeCenter
      • UIViewContentModeTop
      • UIViewContentModeBottom
      • UIViewContentModeLeft
      • UIViewContentModeRight
      • UIViewContentModeTopLeft
      • UIViewContentModeTopRight
      • UIViewContentModeBottomLeft
      • UIViewContentModeBottomRight
  • initWithImage:方法

    • 利用这个方法创建出来的imageView的尺寸和传入的图片尺寸一样
  • 延迟调用方法

     [abc performSelector:@selector(stand:) withObject:@"123" afterDelay:10];
    
     //10s后自动调用abc的stand:方法,并且传递@"123"参数
     makeObjectsPerformSelector 让数组中所有对象都执行者个方法
UILabel
  1. 常见属性

    • @property(nonatomic,copy) NSString *text; 显示的文字
    • @property(nonatomic,retain) UIFont *font; 字体
    • @property(nonatomic,retain) UIColor *textColor; 文字颜色
    • @property(nonatomic) NSTextAlignment textAlignment; 对齐模式(比如左对齐、居中对齐、右对齐)
    • @property(nonatomic) NSInteger numberOfLines; 文字行数
    • @property(nonatomic) NSLineBreakMode lineBreakMode; 换行模式
  2. UIFont 常用方法

    • + (UIFont *)systemFontOfSize:(CGFloat)fontSize; 系统默认字体
    • + (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize; 粗体
    • + (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize; 斜体
  3. UILabel实现包裹内容

    • 设置宽度约束为 {100, 100}, {200, 200}};=60@700)] wideView宽度大于等于60point,该约束条件优先级为700(优先级最大值为1000,优先级越高的约束越先被满足) V:[redBox][yellowBox(==redBox)] 竖直方向上,先有一个redBox,其下方紧接一个高度等于redBox高度的yellowBox H:|-10-[Find]-[FindNext]-[FindField(>=20)]-| 水平方向上,Find距离父view左边缘默认间隔宽度, 之后是FindNext距离Find间隔默认宽度;再之后是宽度不小于20的FindField它和FindNext以及父view右边缘的间距都是默认宽度。 竖线“|”表示superview的边缘
    • 使用VFL来创建约束数组

      + (NSArray *)constraintsWithVisualFormat:(NSString *)format options:(NSLayoutFormatOptions)opts metrics:(NSDictionary *)metrics 
      views:(NSDictionary *)views;
      format :VFL语句
      opts :约束类型
      metrics :VFL语句中用到的具体数值
      views :VFL语句中用到的控件
      • 创建一个字典(内部包含VFL语句中用到的控件)的快捷宏定义 NSDictionaryOfVariableBindings(...)
关注
打赏
1661428283
查看更多评论
立即登录/注册

微信扫码登录

0.0371s