iOS UILabel垂直居中

2021-07-11 08:07:13 字數 1148 閱讀 5016

平時開發的時候可能會遇到這種問題:當乙個uilabel的frame的高度設定的過大時,發現uilabel是垂直居中的,有的需求是需要將這個label垂直向上顯示,之前的辦法是計算出label.text的字型所占用的frame大小,根據這個大小再重新設定label的frame值,未免有些麻煩,前陣子封裝了個自定義label實現的垂直居中的設定。廢話不多說,上**。

//

// jflabel.h

//// created by japho on 16/2/25.

//#import typedef enum

verticalalignment;

@inte***ce jflabel : uilabel

@property (nonatomic) verticalalignment verticalalignment;

@end

//

// jflabel.m

//// created by japho on 16/2/25.

//#import "jflabel.h"

@implementation jflabel

@synthesize verticalalignment = verticalalignment_;

- (id)initwithframe:(cgrect)frame

return self;

}- (void)setverticalalignment:(verticalalignment)verticalalignment

- (cgrect)textrectforbounds:(cgrect)bounds limitedtonumberoflines:(nsinteger)numberoflines

return textrect;

}-(void)drawtextinrect:(cgrect)requestedrect

@end

封裝的類繼承自uilabel,需要設定垂直居中時直接設定屬性就可以了。

呼叫示例**:

- (jflabel *)titlelabel

return _titlelabel;

}

iOS UILabel垂直對齊(上居中)

專案中顯示文字資訊的時候,大多使用label。但是當文字量比較小的時候,我們定義label.frame較大,這時候文字會自動上下居中顯示,不符合我們的要求,並且uilabel也沒有提供相應的屬性或者方法來滿足我們的要求。為了滿足需求,我之前的方法都是計算文字的長度,然後再設定label的frame。...

css 水平居中 垂直居中 水平垂直居中

一 水平居中 1 行內元素水平居中text align center 2 塊級元素水平居中margin 0 auto 3 多個塊狀元素的水平居中 實現多個水平排列的塊狀元素的水平居中,是將要水平排列的塊狀元素設為display inline block,然後在父級元素上設定text align ce...

css水平居中 垂直居中 水平垂直居中

css水平居中 垂直居中 水平垂直居中 水平居中 行內元素 block text align 塊級元素 方案一 分寬度定不定兩種情況 定寬度 margin 0 auto 作用 使盒子自己居中,意思是上下距離為0,auto就是左右自適應兩邊距離 不定寬度 設定子元素display inline blo...