iOS-Button圖片和文字垂直置中【按鈕圖片和文字同時置中】,ios-button置中

來源:互聯網
上載者:User

iOS-Button圖片和文字垂直置中【按鈕圖片和文字同時置中】,ios-button置中

 

以前不怎麼有這樣的需求,最近開發經常用到,所以就乾脆封裝一個這樣的 Button 讓圖片和字型都垂直置中,重寫layoutSubviews方法,來實現就可以,至於 layoutSubviews 方法什麼時候觸發,可以自行查下;

- (instancetype)initWithCoder:(NSCoder *)coder{    self = [super initWithCoder:coder];    if (self) {        self.layer.shadowColor = [UIColor lightGrayColor].CGColor;        self.layer.shadowOffset = CGSizeMake(0, 1);        self.layer.shadowOpacity = 0.1;          }    return self;}//重寫該方法 有些比例可以自行調節-(void)layoutSubviews{    [super layoutSubviews];    //計算寬高    float imgHeight = self.imageView.image.size.height;    float imgWidth = self.imageView.image.size.width;    //imageView的尺寸    self.imageView.frame = CGRectMake((VIEWWIDTH(self) - imgWidth)/2, VIEWHEIGHT(self)/2 - imgHeight*7/7,imgWidth, imgHeight);    //titleLabel的尺寸    [self.titleLabel sizeToFit];    float titleWidth = VIEWWIDTH(self.titleLabel);    float titleHeight = VIEWHEIGHT(self.titleLabel);    self.titleLabel.frame = CGRectMake((VIEWWIDTH(self) - titleWidth)/2, VIEWHEIGHT(self)/2 + imgHeight/7 + 20*VIEWHEIGHT(self)/900, titleWidth, titleHeight);    self.titleLabel.textAlignment = NSTextAlignmentCenter;}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.