zoukankan      html  css  js  c++  java
  • UILabel顶端对齐

    比较一劳永逸的写法是对label添加一个分类

    @interface UILabel (VerticalAlign)
    /** 顶端对齐 */
    -(void)alignTop;
    /** 底部对齐 */
    -(void)alignBottom;
    @end
    -(void)alignTop{
        CGSize fontSize = [self.text sizeWithAttributes:@{NSFontAttributeName:self.font}];
        double finalHeight = fontSize.height * self.numberOfLines;
        double finalWidth = self.frame.size.width;
        CGSize theStringSize = [self.text boundingRectWithSize:CGSizeMake(finalWidth, finalHeight)
                                                       options:NSStringDrawingUsesLineFragmentOrigin
                                                    attributes:@{NSFontAttributeName:self.font}
                                                       context:nil].size;
        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 sizeWithAttributes:@{NSFontAttributeName:self.font}];
        double finalHeight = fontSize.height * self.numberOfLines;
        double finalWidth = self.frame.size.width;
        CGSize theStringSize = [self.text boundingRectWithSize:CGSizeMake(finalWidth, finalHeight)
                                                       options:NSStringDrawingUsesLineFragmentOrigin
                                                    attributes:@{NSFontAttributeName:self.font}
                                                       context:nil].size;
        int newLinesToPad = (finalHeight - theStringSize.height) / fontSize.height;
        for(int i=0; i<newLinesToPad; i++){
            self.text = [NSString stringWithFormat:@" 
    %@",self.text];
        }
    }

    然后在使用时添加[myLabel alignTop]即可。
    添加前

    使用后

  • 相关阅读:
    对象比较
    ObservableCollection<T> 的同类 ListCollectionView
    数据模板--DataTemplate
    ListBox的虚拟可视化技术
    WPF 动画 和 色彩 的随笔
    Binding.RelativeSource 属性
    javascript基础DOM操作
    js dom 操作技巧
    js 内置对象和方法 示例
    javascript 编程技巧
  • 原文地址:https://www.cnblogs.com/Apologize/p/5908537.html
Copyright © 2011-2022 走看看