有關內容對齊方式的四個容易混淆的屬性

. textAligment : 文字的水平方向的對齊方式

1> 取值

NSTextAlignmentLeft      = 0,    // 左對齊

NSTextAlignmentCenter    = 1,    // 居中對齊

NSTextAlignmentRight     = 2,    // 右對齊

2> 哪些控件有這個屬性 : 一般能夠顯示文字的控件都有這個屬性

* UITextField

* UILabel

* UITextView


. contentVerticalAlignment : 內容的垂直方向的對齊方式

1> 取值

UIControlContentVerticalAlignmentCenter  = 0, // 居中對齊

UIControlContentVerticalAlignmentTop     = 1, // 頂部對齊

UIControlContentVerticalAlignmentBottom  = 2, // 底部對齊


2> 哪些控件有這個屬性 : 繼承自UIControl的控件或者UIControl本身

* UIControl

* UIButton

* UITextField

* ...



. contentHorizontalAlignment : 內容的水平方向的對齊方式

1> 取值

UIControlContentHorizontalAlignmentCenter = 0, // 居中對齊

UIControlContentHorizontalAlignmentLeft   = 1, // 左對齊

UIControlContentHorizontalAlignmentRight  = 2, // 右對齊


2> 哪些控件有這個屬性 : 繼承自UIControl的控件或者UIControl本身

* UIControl

* UIButton

* UITextField

* ...



. contentMode : 內容模式(控制內容的對齊方式), 一般對UIImageView很有用

1> 取值

/**

 規律:

 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,


2> 哪些控件有這個屬性 : 所有UI控件都有


. 如果有多個屬性的作用衝突了, 只有1個屬性有效(就近原則)





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章