zoukankan      html  css  js  c++  java
  • iOS常用技术-竖立的Label

     1 //
     2 //  VerticalLabel.h
     3 //  VerticalLabel
     4 //
     5 //  Created by 大欢 on 16/1/19.
     6 //  Copyright © 2016年 bjsxt. All rights reserved.
     7 //
     8 
     9 #import <UIKit/UIKit.h>
    10 
    11 @interface VerticalLabel : UILabel
    12 
    13 - (instancetype)initWithVerticalText:(NSString *)string fontSize:(CGFloat)width;
    14 
    15 @end

    /******************************************************************/

     1 //
     2 //  VerticalLabel.m
     3 //  VerticalLabel
     4 //
     5 //  Created by 大欢 on 16/1/19.
     6 //  Copyright © 2016年 bjsxt. All rights reserved.
     7 //
     8 
     9 #import "VerticalLabel.h"
    10 
    11 #define lineWidth 50
    12 
    13 @implementation VerticalLabel
    14 
    15 - (instancetype)initWithVerticalText:(NSString *)string fontSize:(CGFloat)width {
    16     
    17     if (self = [super init]) {
    18         
    19         NSMutableParagraphStyle * paragarph = [[NSMutableParagraphStyle alloc] init];
    20         paragarph.lineSpacing = lineWidth;
    21         
    22         NSDictionary * dict = @{NSFontAttributeName:[UIFont systemFontOfSize:width],
    23                                 NSParagraphStyleAttributeName:paragarph};
    24         
    25         NSAttributedString * astring = [[NSAttributedString alloc] initWithString:string attributes:dict];
    26                                                                 //MAXFLOAT
    27         CGSize size = [string boundingRectWithSize:CGSizeMake(width, 480) options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil].size;
    28         
    29         self.text = string;
    30         self.attributedText = astring;
    31         self.lineBreakMode = NSLineBreakByCharWrapping;
    32         self.numberOfLines = 0;
    33         self.bounds = CGRectMake(0, 0, size.width, size.height);
    34     }
    35     return self;
    36 }
    37 @end

    /*****************************************************************************/

     1 /
     2 //  ViewController.m
     3 //  VerticalLabel
     4 //
     5 //  Created by 大欢 on 16/1/19.
     6 //  Copyright © 2016年 bjsxt. All rights reserved.
     7 //
     8 
     9 #import "ViewController.h"
    10 #import "VerticalLabel.h"
    11 
    12 @interface ViewController ()
    13 @property (nonatomic, strong) VerticalLabel * label;
    14 @end
    15 
    16 @implementation ViewController
    17 
    18 - (VerticalLabel *)label {
    19     
    20     if (!_label) {
    21         _label = [[VerticalLabel alloc] initWithVerticalText:@"哈哈哈哈" fontSize:50];
    22         _label.backgroundColor = [UIColor greenColor];
    23         _label.center = self.view.center;
    24     }
    25     return _label;
    26 }
    27 
    28 - (void)viewDidLoad {
    29     [super viewDidLoad];
    30     // Do any additional setup after loading the view, typically from a nib.
    31     [self.view addSubview:self.label];
    32 }
    33 
    34 - (void)didReceiveMemoryWarning {
    35     [super didReceiveMemoryWarning];
    36     // Dispose of any resources that can be recreated.
    37 }
    38 
    39 @end


    /*********************************************************************/

  • 相关阅读:
    音乐
    脚本注释的作用
    JavaScript状态栏冒泡
    JavaScript动态显示时间
    正则表达式
    JavaScript数组的最大长度
    加密(编码)web.config中的信息(如:连接字符串)
    JavaScript实现EMAIL功能
    JavaScript检测分辨率
    JavaScript如何给网页滚动条加上颜色?
  • 原文地址:https://www.cnblogs.com/MrWuYindi/p/5146622.html
Copyright © 2011-2022 走看看