UITextView 和UILable 设置行间距

时间:2022-09-03 06:10:41

UITextView 和UILable 它本身是没有控制行高的。很多人说用Uiwebview,但我觉得那不好用,要用html布局麻烦,占内存。也有人说drawatpoint,但

发现画中文的时候也很占内存,我就投机取巧一下吧

UILable 跟下面的用法一样的自己改一下

 

[plain]  view plain copy
  1. //  DrawAtPoint  
  2. //  
  3. //  Created by xia kejie on 12-5-13.  
  4. //  Copyright (c) 2012年 __MyCompanyName__. All rights reserved.  
  5. //  
  6.   
  7. #import "ViewController.h"  
  8. #define LINENUM 20    //每行字数  
  9. #define LINEHEIGHT 30 //行高  
  10. @interface ViewController ()  
  11.   
  12. @end  
  13.   
  14. @implementation ViewController  
  15.   
  16. - (void)viewDidLoad  
  17. {  
  18.     int begin=0;  
  19.     NSString *partialString;  
  20.      
  21.     [super viewDidLoad];  
  22.     NSString* str=@"东南形胜,三吴都会,钱塘自古繁华。烟柳画桥,风帘翠幕,参差十万人家。云树 绕堤沙,怒涛卷霜雪,天堑无涯。市列珠玑,户盈罗绮,竞豪奢。重湖叠清嘉,有三秋桂子,十里荷花。羌管弄晴,菱歌泛夜,嬉嬉钓叟莲娃。千骑拥高衙,乘醉听箫鼓,吟赏烟霞。异日图将好景,归去凤池夸。云树 绕堤沙,怒涛卷霜雪,天堑无涯。市列珠玑,户盈罗绮,竞豪奢。重湖叠清嘉,有三秋桂子,十里荷花。羌管弄晴,菱歌泛夜,嬉嬉钓叟莲娃。千骑拥高衙,乘醉听箫鼓,吟赏烟霞。异日图将好景,归去凤池夸。";  
  23.       
  24.     int num = str.length/LINENUM;  
  25.     NSLog(@"%d",str.length);  
  26.     NSLog(@"%d",num);  
  27.     for (int i=0; i<=num; i++) {  
  28.     UITextView* textview=[[UITextView alloc]init];  
  29.     NSLog(@"%d-----",begin);  
  30.       
  31.     if(i==num)  
  32.     partialString=[str substringWithRange:NSMakeRange(begin,str.length%LINENUM)];     
  33.     else  
  34.     partialString=[str substringWithRange:NSMakeRange(begin,LINENUM)];  
  35.       
  36.     textview.backgroundColor=[UIColor clearColor];  
  37.     textview.text=partialString;  
  38.     textview.frame=CGRectMake(0, 30+i*LINEHEIGHT, 300, 30);  
  39.     [self.view addSubview:textview];  
  40.   
  41.     begin+=LINENUM;  
  42.     NSLog(@"%@",partialString);  
  43.          
  44.          
  45.   }  
  46.     // Do any additional setup after loading the view, typically from a nib.  
  47. }  

原文地址:UITextView 和UILable 设置行间距