UILabel和UITextView行间距

本文介绍了一种在iOS应用中通过自定义UITextView来实现文本行间距的方法。通过对UITextView进行扩展,可以有效地控制显示文本的行高,适用于需要调整文本布局的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

UITextView 和UILable 它本身是没有控制行高的。下面的方法可以实现控制行间距。UILable跟下面的用法一样,自己改一下就OK。
//  DrawAtPoint
//
//  Created by xia kejie on 12-5-13.
//  Copyright (c) 2012年 __MyCompanyName__. All rights reserved.
//
#import "ViewController.h"
#define LINENUM 20    //每行字数
#define LINEHEIGHT 30 //行高
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad
{
    int begin=0;
    NSString *partialString;
   
    [super viewDidLoad];
    NSString* str=@"东南形胜,三吴都会,钱塘自古繁华。烟柳画桥,风帘翠幕,参差十万人家。云树 绕堤沙,怒涛卷霜雪,天堑无涯。市列珠玑,户盈罗绮,竞豪奢。重湖叠清嘉,有三秋桂子,十里荷花。羌管弄晴,菱歌泛夜,嬉嬉钓叟莲娃。千骑拥高衙,乘醉听箫鼓,吟赏烟霞。异日图将好景,归去凤池夸。云树 绕堤沙,怒涛卷霜雪,天堑无涯。市列珠玑,户盈罗绮,竞豪奢。重湖叠清嘉,有三秋桂子,十里荷花。羌管弄晴,菱歌泛夜,嬉嬉钓叟莲娃。千骑拥高衙,乘醉听箫鼓,吟赏烟霞。异日图将好景,归去凤池夸。";
    
    int num = str.length/LINENUM;
    NSLog(@"%d",str.length);
    NSLog(@"%d",num);
    for (int i=0; i<=num; i++) {
    UITextView* textview=[[UITextView alloc]init];
    NSLog(@"%d-----",begin);
    
    if(i==num)
    partialString=[str substringWithRange:NSMakeRange(begin,str.length%LINENUM)];   
    else
    partialString=[str substringWithRange:NSMakeRange(begin,LINENUM)];
    
    textview.backgroundColor=[UIColor clearColor];
    textview.text=partialString;
    textview.frame=CGRectMake(0, 30+i*LINEHEIGHT, 300, 30);
    [self.view addSubview:textview];
    begin+=LINENUM;
    NSLog(@"%@",partialString);
       
       
  }
	// Do any additional setup after loading the view, typically from a nib.
}



转载于:https://my.oschina.net/hujian/blog/289970

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值