永发信息网

ios怎么去除label显示的空行

答案:1  悬赏:30  手机版
解决时间 2021-03-09 03:05
  • 提问者网友:夢醒日落
  • 2021-03-08 06:47
ios怎么去除label显示的空行
最佳答案
  • 五星知识达人网友:夜风逐马
  • 2021-03-08 07:40
iOS7.0之前解决办法:在每个换行符后面添加一个空格
  即如果要显示为:

  aaaaaaa
  空行
  空行
  bbbbbb
  使用以下格式进行文本赋值

  lbl.text = @"aaaaaaa\n\u0020\n\u0020bbbbbb";
  iOS7.0之后需要增加,不增加则无效

  lbl.numberOfLines = 0; // 0表示行数不固定
  lbl.lineBreakMode=UILineBreakModeWordWrap; // 允许换行(可选)
  需求2.在所有的UILabel的text后增加一个空格,并使text右对齐。
  iOS7.0之前解决办法:直接在text后增加空格即可,即text在赋值前增加空格。

  lbl.text = [NSString stringWithFormat:@"%@%@","aaaaa","\u0020"];
  iOS7.0之后需要重写UILabel的drawTextInRect方法,通过缩短默认文本绘制Rect的宽度半个字体宽度来实现。
  具体实现代码如下:
  文件名:MyLabel.h

  #import

  @interface MyLabel : UILabel
  @end
  文件名:MyLabel.m

  #import "MyLabel.h"

  @implementation MyLabel
  -(id) initWithFrame:(CGRect)frame {
  self = [super initWithFrame:frame];
  if(self){
  return self;
  }
  }

  -(void) drawTextInRect:(CGRect)rect {
  //从将文本的绘制Rect宽度缩短半个字体宽度
  //self.font.pointSize / 2
  return [super drawTextInRect:CGRectMake(rect.origin.x, rect.origin.y, rect.size.width - self.font.pointSize / 2, rect.size.height)];
  }
  @end
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯