`
ytwhw
  • 浏览: 98042 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

IOS之UILabel显示内容自动换行

阅读更多
1、UILabel内容自动换行
UIFont *fontName = [UIFont systemFontOfSize:16.0f];
//定义字体大小
CGSize sizeName = [orderFood.food_name 
sizeWithFont:fontName constrainedToSize:CGSizeMake(130.0f,MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];
//orderFood.food_name为字符串,即UILabel要显示的内容;fontName 字体大小;CGSizeMake(130.0f,MAXFLOAT) UILabel显示内容的宽度130.0f,MAXFLOAT为显示内容所允许的最大高度,最终得到的sizeName,其width,heightwei值为显示内容所需显示的实际宽度与高度;UILineBreakModeWordWrap以单词为单位换行,以单词为单位截断。
//定义显示内容的UILabel,宽度为130,高度为经过sizeName.height。
UILabel *lbFoodName = [[UILabel alloc]initWithFrame:
CGRectMake(94, 2, 130, sizeName.height)];
[lbFoodName setText:orderFood.food_name];
[lbFoodName setBackgroundColor:[UIColor clearColor]];
[lbFoodName setFont:[UIFont systemFontOfSize:16.0f]];
[lbFoodName setNumberOfLines:0];
//注意这里UILabel的numberoflines(即最大行数限制)设置成0,即不做行数限制。
[lbFoodName setLineBreakMode:
UILineBreakModeWordWrap];
//将UILabel加入到tvCell 的View中显示。
[tvCell.contentView addSubview:lbFoodName];

2、UILineBreakModeWordWrap详细解释如下:
typedef enum {
   UILineBreakModeWordWrap = 0,
   UILineBreakModeCharacterWrap,
   UILineBreakModeClip,
   UILineBreakModeHeadTruncation,
   UILineBreakModeTailTruncation,
   UILineBreakModeMiddleTruncation,
} UILineBreakMode;


   UILineBreakModeWordWrap = 0,
   以单词为单位换行,以单词为单位截断。
   UILineBreakModeCharacterWrap,
   以字符为单位换行,以字符为单位截断。
   UILineBreakModeClip,
   以单词为单位换行。以字符为单位截断。
   UILineBreakModeHeadTruncation,
   以单词为单位换行。如果是单行,则开始部分有省略号。如果是多行,则中间有省略号,省略号后面有4个字符。
   UILineBreakModeTailTruncation,
   以单词为单位换行。无论是单行还是多行,都是末尾有省略号。
   UILineBreakModeMiddleTruncation,
   以单词为单位换行。无论是单行还是多行,都是中间有省略号,省略号后面只有2个字符。

3、UITextView根据内容自动调整高度与此类似,不多做说明。

 

分享到:
评论
1 楼 吃饱了就饿 2012-12-25  
不错啊,很清晰,学习学习

相关推荐

    UILabel自动换行

    我们将看到,当文本内容超过一行时,UILabel 能够自动换行,适应不同长度的文本。这是一个非常实用的功能,尤其在界面布局中。" // 开启自动换行 label.numberOfLines = 0 // 设置断行模式 label....

    IOS7,Label自动换行,自适应高度

    在iOS7之前,如果想要让UILabel自动换行并自适应高度,开发者通常需要手动计算文本的高度,这在处理动态内容时较为繁琐。然而,从iOS7开始,Apple引入了新的属性和方法,使得UILabel能够更方便地实现自动换行和...

    iOS_UILabel and UITextField

    5. **多行显示**:`numberOfLines`属性可以设置为0,让`UILabel`自动换行显示多行文本。 6. **自动调整大小**:`adjustsFontSizeToFitWidth`可让文本自适应宽度,缩小字体大小以适应空间。 7. **边距与线宽**:`...

    ios-动态创建多个标签,自动换行.zip

    在iOS开发中,动态创建多个标签并实现自动换行是一项常见的需求,特别是在界面设计中需要展示多行可滚动的文字内容时。本Demo“ios-动态创建多个标签,自动换行”提供了一个很好的解决方案,让我们深入探讨一下这个...

    swift-iOS开发中实现UILabel滚动类似于跑马灯效果;

    要使UILabel支持多行文本显示,需要设置`numberOfLines`属性为0,这样它就会根据文本内容自动换行。 ```swift label.numberOfLines = 0 ``` 2. **设置内容填充**: 为了实现滚动效果,需要设置`textAlignment`...

    自定义uilabel

    4. numberOfLines:设置最大显示行数,0表示根据内容自动换行。 5. lineBreakMode:设置文本换行模式,例如按单词、字符或头部进行换行。 6. adjustsFontSizeToFitWidth:如果为YES,UILabel会自动缩小字体大小以...

    ios-自适应高度UILabel.zip

    将其设置为0,则会根据文本内容自动换行并显示多行文本。 2. ** preferredMaxLayoutWidth 属性**: - 设置`preferredMaxLayoutWidth`可以限制UILabel的最大宽度。当文本内容超过这个宽度时,将会自动换行。这在...

    iOS中字符串换行的实现方法

    确保设置适当的约束和自动换行属性,例如在`UILabel`中启用`numberOfLines`属性并设置为0,可以让文本自动换行。 - **本地化**:如果你的应用支持多语言,需要确保换行符在不同语言环境下依然有效。 - **富文本**:...

    iOS UILabel

    `UILabel`支持自动换行,通过`lineBreakMode`属性可以控制换行模式。例如,`NSLineBreakByTruncatingTail`会在文本末尾添加省略号。 ### 5. 字体与颜色 使用`font`属性设置字体大小和类型,`textColor`设置文本...

    UILabel 宽度和高度自适应的方法

    如果设置为0,那么UILabel将会根据内容自动换行,直到所有文本都显示完毕。 - `lineBreakMode` 属性:确定文本如何在多行中换行。例如,`NSLineBreakByWordWrapping`会使得单词在边界处断行,而不会将单词截断。 -...

    iOS UILabel根据内容自动调整高度

    在iOS开发中,`UILabel` 是一个非常常用的控件,用于显示单行或多行文本。在某些场景下,我们可能需要让`UILabel`根据其内容动态调整高度,以适应不同长度的文本。本文将深入探讨如何实现这个功能,并提供相关的代码...

    swift-弹出提示框自动换行适应大小易定制。

    2. **自动换行**:为了使文本自动换行,我们需要设置`UILabel`的`numberOfLines`属性为0,这样文本就会在需要时自动换行。同时,`lineBreakMode`应设为`.byWordWrapping`,以确保单词不会被截断。 3. **适应大小**...

    自适应换行 多条评论

    这样,当文本内容超过一行时,UILabel会自动换行以显示所有内容。同时,我们还需要确保`lineBreakMode`设置为合适的值,例如`NSLineBreakByWordWrapping`,以根据单词进行换行。 2. **动态计算高度**:为了动态调整...

    iOS 设置UILabel的行间距并自适应高度的方法

    在iOS开发中,`UILabel` 是一个非常常用的控件,用于显示单行或多行文本。在某些场景下,我们可能需要设置`UILabel`的行间距并让其自适应内容的高度。下面将详细介绍如何实现这个功能。 首先,创建一个`UILabel`...

    UILabel多行显示

    设置为0则表示根据内容自动换行,直到所有文本都显示出来。例如: ```swift let label = UILabel() label.numberOfLines = 0 ``` 接下来,我们需要调整`UILabel`的约束或者frame来为其内容提供足够的空间。如果是...

    ios UILabel

    4. numberOfLines:设置Label的行数,0表示自动换行,多行显示。 5. lineBreakMode:设置文本换行模式,例如按单词、字符或头部截断。 6. backgroundColor:设置Label的背景颜色。 7. adjustsFontSizeToFitWidth:...

    iOS开发总结之UILabel常用属性介绍

    7. `numberOfLines`:指定标签最多显示的行数,设为0则表示自动换行: ```swift label.numberOfLines = 0 ``` 8. `adjustsFontSizeToFitWidth`:如果开启,文本会自动调整字体大小以适应标签宽度: ```swift ...

    卡片编辑文字并自动换行.zip

    在IT行业中,卡片编辑文字并自动换行是一种常见的功能,特别是在设计、图像处理以及移动应用开发等领域。这个功能允许用户在卡片式的界面元素上添加文本,并且文本会根据卡片的大小自动进行换行,以保持视觉上的整洁...

    iOS开发笔记--详解UILabel的相关属性设置

    默认情况下,未设置此值时,UILabel会根据文本内容自动换行。 以上就是UILabel的基本属性设置,熟练掌握这些知识点将有助于你在iOS应用开发中更有效地利用UILabel展示文本信息。记得在实际项目中不断实践和调整,以...

Global site tag (gtag.js) - Google Analytics