项目总结-小知识

item属性总结

  • UINavigationItem

    1. 获得方式

      self.navigationItem // self是指控制器
      
    2. 作用

      可以用来设置当前控制器顶部导航栏的内容
      // 设置导航栏中间的内容
      self.navigationItem.title
      self.navigationItem.titleView
      
  • UIBarButtonItem

    1. 用在什么地方

      // 设置导航栏左上角的内容
      self.navigationItem.leftBarButtonItem
      // 设置导航栏右上角的内容
      self.navigationItem.rightBarButtonItem
      
    2. 作用

      相当于一个按钮
      
  • UITabBarItem

    1. 获得方式

      self.tabBarItem // self是指控制器
      
    2. 作用

      可以用来设置当前控制器对应的选项卡标签的内容
      // 标签的标题
      self.tabBarItem.title
      // 标签的图标
      self.tabBarItem.image
      // 标签的选中图标
      self.tabBarItem.selectdImage
      
  • UINavigationBar

    1. 导航控制器顶部的栏(UI控件)
    2. UINavigationBar上面显示什么内容, 取决于当前控制器的navigationItem属性
    3. UINavigationBar是view, navigationItem是model
    4. 由navigationItem给UINavigationBar提供显示的数据
  • UITabBar

    1. UITabBarController底部的选项卡条
  • UITabBarButton

    1. UITabBar底部的每一个标签
    2. 每一个UITabBarButton里面显示什么内容,取决于当前控制器的tabBarItem属性
    3. UITabBarButton是view, tabBarItem是model
    4. 由tabBarItem给UITabBarButton提供显示的数据

易混淆的属性

  • 四个容易混淆的属性:

    1. textAligment : 文字的水平方向的对齐方式

      • 取值

        NSTextAlignmentLeft      = 0,    // 左对齐
        NSTextAlignmentCenter    = 1,    // 居中对齐
        NSTextAlignmentRight    = 2,    // 右对齐
        
      • 哪些控件有这个属性 : 一般能够显示文字的控件都有这个属性

        UITextField 
        UILabel
        UITextView
        
    2. contentVerticalAlignment : 内容的垂直方向的对齐方式

      • 取值

        UIControlContentVerticalAlignmentCenter  = 0, // 居中对齐
        UIControlContentVerticalAlignmentTop     = 1, // 顶部对齐
        UIControlContentVerticalAlignmentBottom  = 2, // 底部对齐
        
      • 哪些控件有这个属性 : 继承自UIControl的控件或者UIControl本身

        UIControl
        UIButton
        UITextField
        ...
        
    3. contentHorizontalAlignment : 内容的水平方向的对齐方式

      • 取值

        UIControlContentHorizontalAlignmentCenter = 0, // 居中对齐
        UIControlContentHorizontalAlignmentLeft   = 1, // 左对齐
        UIControlContentHorizontalAlignmentRight  = 2, // 右对齐
        
      • 哪些控件有这个属性 : 继承自UIControl的控件或者UIControl本身

        UIControl
        UIButton
        UITextField
        ...
        
    4. contentMode : 内容模式(控制内容的对齐方式), 一般对UIImageView很有用

      • 取值

  规律:
 1.Scale : 图片会拉伸
 2.Aspect : 图片会保持原来的宽高比

// 前3个情况, 图片都会拉伸
// (默认)拉伸图片至填充整个UIImageView(图片的显示尺寸会跟UIImageView的尺寸一样)
UIViewContentModeScaleToFill,
// 按照图片原来的宽高比进行伸缩, 伸缩至适应整个UIImageView(图片的内容不能超出UIImageView的尺寸范围)
UIViewContentModeScaleAspectFit,
// 按照图片原来的宽高比进行伸缩, 伸缩至 图片的宽度和UIImageView的宽度一样 或者 图片的高度和UIImageView的高度一样
UIViewContentModeScaleAspectFill,

// 后面的所有情况, 都会按照图片的原来尺寸显示, 不会进行拉伸
UIViewContentModeRedraw,  // 当控件的尺寸改变了, 就会重绘一次(重新调用setNeedsDisplay, 调用drawRect:)
UIViewContentModeCenter,
UIViewContentModeTop,
UIViewContentModeBottom,
UIViewContentModeLeft,
UIViewContentModeRight,
UIViewContentModeTopLeft,
UIViewContentModeTopRight,
UIViewContentModeBottomLeft,
UIViewContentModeBottomRight,
 - 哪些控件有这个属性 : 所有UI控件都有
  • 如果有多个属性的作用冲突了, 只有1个属性有效(就近原则)

results matching ""

    No results matching ""