zoukankan      html  css  js  c++  java
  • 控制UIlabel 垂直方向对齐方式的 方法

    最正统的方法,利用objective-c的category特性,修改UILabel的绘制代码。示例代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    
    // -- file: UILabel+VerticalAlign.h
    #pragma mark VerticalAlign
    @interface UILabel (VerticalAlign)
    - (void)alignTop;
    - (void)alignBottom;
    @end
    // -- file: UILabel+VerticalAlign.m
    @implementation UILabel (VerticalAlign)
    - (void)alignTop {
        CGSize fontSize = [self.text sizeWithFont:self.font];
        double finalHeight = fontSize.height * self.numberOfLines;
        double finalWidth = self.frame.size.width;    //expected width of label
        CGSize theStringSize = [self.text sizeWithFont:self.font constrainedToSize:CGSizeMake(finalWidth, finalHeight) lineBreakMode:self.lineBreakMode];
        int newLinesToPad = (finalHeight  - theStringSize.height) / fontSize.height;
        for(int i=0; i<newLinesToPad; i++)
            self.text = [self.text stringByAppendingString:@"
     "];
    }
    - (void)alignBottom {
        CGSize fontSize = [self.text sizeWithFont:self.font];
        double finalHeight = fontSize.height * self.numberOfLines;
        double finalWidth = self.frame.size.width;    //expected width of label
        CGSize theStringSize = [self.text sizeWithFont:self.font constrainedToSize:CGSizeMake(finalWidth, finalHeight) lineBreakMode:self.lineBreakMode];
        int newLinesToPad = (finalHeight  - theStringSize.height) / fontSize.height;
        for(int i=0; i<newLinesToPad; i++)
            self.text = [NSString stringWithFormat:@" 
    %@",self.text];
    }
    @end
    

     

  • 相关阅读:
    mongodb的安装和使用
    python小笔记
    爬取猫眼TOP100电影
    python测接口
    Python数据驱动(ddt)
    Python文件读写(csv、excel)
    python爬虫入门(转:http://www.cnblogs.com/voidsky/p/5490810.html)
    python bs4的使用
    Django 中的 model 继承
    HTTP幂等性
  • 原文地址:https://www.cnblogs.com/liyufeng2013/p/UILabel.html
Copyright © 2011-2022 走看看