iOS---设置控件的内容模式
阅读原文时间:2023年07月10日阅读:1

容易混淆的内容摆放属性:

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控件都有

5. 如果有多个属性的作用冲突了, 只有1个属性有效(就近原则)

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章