NSTextAlignmentLeft = 0, // 左對齊 NSTextAlignmentCenter = 1, // 居中對齊 NSTextAlignmentRight = 2, // 右對齊
通常可以顯示文字的控件都有這個屬性ui
UITextFieldspa
UILabelcode
UITextView ...blog
(UILabel 默認是居中對齊的,並無提供頂部對齊的方式-_-,可使用以下的方式實現:)繼承
好比設置Label 的numberOflines = 2, 能夠直接將要顯示的後面拼接個 "\n",這樣不管文字夠不夠兩行,文字都可以靠左上方對齊了 😎圖片
for(int i=0; i<newLinesToPad; i++) self.text = [self.text stringByAppendingString:@"\n "];
此方法更加簡單粗暴,可是頗有效。其方法是在文本後面加多一些\n。
須要注意的是,\n後還得加至少一個空格,不然多餘的\n會被UILabel忽略。從這一點上看,UILabel彷佛又過於「聰明」了。 其餘方式實現label頂端對齊能夠參考:http://blog.devtang.com/2011/11/20/set-uilabel-text-align-top/string
UIControlContentVerticalAlignmentCenter = 0, // 居中對齊 UIControlContentVerticalAlignmentTop = 1, // 頂部對齊 UIControlContentVerticalAlignmentBottom = 2, // 底部對齊
哪些控件有這個屬性it
繼承自UIControl的控件或者UIControl自己class
UIControlobject
UIButton
UITextField...
UIControlContentHorizontalAlignmentCenter = 0, // 居中對齊 UIControlContentHorizontalAlignmentLeft = 1, // 左對齊 UIControlContentHorizontalAlignmentRight = 2, // 右對齊
哪些控件有這些屬性
繼承自UIControl的控件或者UIControl自己
UIControl
UIButton
UITextField....
更具第2,第3點 就能夠方便的設置 btn 的文字以及圖片的各類對齊方式了,如btn設置:
btn.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
btn.contentVerticalAlignment = UIControlContentVerticalAlignmentTop;
此時按鈕的內容就會靠左上角對齊了
取值
規律: 1.Scale : 圖片會拉伸 2.Aspect : 圖片會保持原來的寬高比 3. AspectScale */ // 前3個狀況, 圖片都會拉伸 // (默認)拉伸圖片至填充整個UIImageView(圖片的顯示尺寸會跟UIImageView的尺寸同樣) UIViewContentModeScaleToFill, // 按照圖片原來的寬高比進行伸縮, 伸縮至適應整個UIImageView(圖片的內容不能超出UIImageView的尺寸範圍) UIViewContentModeScaleAspectFit, // 按照圖片原來的寬高比進行伸縮, 伸縮至 圖片的寬度和UIImageView的寬度同樣 或者 圖片的高度和UIImageView的高度同樣 UIViewContentModeScaleAspectFill, // 後面的全部狀況, 都會按照圖片的原來尺寸顯示, 不會進行拉伸 UIViewContentModeRedraw, // 當控件的尺寸改變了, 就會重繪一次(從新調用setNeedsDisplay, 調用drawRect:) UIViewContentModeCenter, UIViewContentModeTop, UIViewContentModeBottom, UIViewContentModeLeft, UIViewContentModeRight, UIViewContentModeTopLeft, UIViewContentModeTopRight, UIViewContentModeBottomLeft, UIViewContentModeBottomRight,
哪些控件有這個屬性
全部UI控件都有