关于 UILabel 的总结

UILabel加载Html文本 项目中本来应该是一个简单的label就可以实现的东西,产品非要给文本加个类似富文本的效果。 如果文本固定也就算了,偏偏某些字还是不确定的,后台给返回了一串html。 于是网上调研一番,发现UILabel是可以加载html的。具体实现代码如下: //取出htmlStr NSString * htmlStr = [NSString stringWithFormat:@"%@",dic[@"shareDesc"]]; //转成带属性的字符串 NSAttributedString * attStr = [[NSA 阅读详情
UILable是iPhone界面最基本的控件,主要用来显示文本信息。
常用属性和方法有:
1、创建
CGRect rect = CGRectMake(100, 200, 50, 50);
UILabel 
*label = [[UILabel alloc] initWithFrame:rect];
2、text //设置和读取文本内容,默认为nil
label.text = @”文本信息”; //设置内容
NSLog(@”%@”, label.text); //读取内容
3、textColor //设置文字颜色,默认为黑色
lable.textColor = [UIColor redColor];
4、font //设置字体大小,默认17
label.font = [UIFont systemFontOfSize:20]; //⼀一般方法
label.font = [UIFont boldSystemFontOfSize:20]; //加粗方法
label.font = [UIFont fontWithName:@"Arial" size:16]; //指定
字体的方法
//还有⼀一种从外部导入字体的方法。
5、textAlignment //设置标签文本对齐方式。
label.textAlignment = NSTextAlignmentCenter; //还有
NSTextAlignmentLeft、 NSTextAlignmentRight.
6、numberOfLines //标签最多显示行数,如果为0则表示多行。
label.numberOfLines = 2;
7、enabled //只是决定了Label的绘制方式,将它设置
为NO将会使文本变暗,表示它没有激活,这时向它设置颜色值是无效的。
label.enable 
= NO;
8、highlighted //是否高亮显示
label.highlighted = YES;
label.highlightedTextColor 
= [UIColor orangeColor]; //高亮
显示时的文本颜色
9、ShadowColor //设置阴影颜色 
[label setShadowColor:[UIColor blackColor]];
10、ShadowOffset //设置阴影偏移量
[label setShadowOffset:CGSizeMake(-1, -1)];
11、baselineAdjustment //如果adjustsFontSizeToFitWidth属性设
置为YES,这个属性就来控制文本基线的行为。
label.baselineAdjustment 
= UIBaselineAdjustmentNone;
UIBaselineAdjustmentAlignBaselines 
= 0,默认,文本最上端与中线对齐。
UIBaselineAdjustmentAlignCenters,  文本中线与label中线对齐。
UIBaselineAdjustmentNone, 文本最低端与label中线对齐。
12、Autoshrink //是否自动收缩
Fixed Font Size 默认,如果Label宽度小于文字长度时时,文字大小不自动缩放
minimumScaleFactor 设置最小收缩比例,如果Label宽度小于文字长度时,文字
进行收缩,收缩超过比例后,停止收缩。
minimumFontSize 设置最小收缩字号,如果Label宽度小于文字长度时,文字字号
减小,低于设定字号后,不再减小。
//6.0以后不再使用了。
label.minimumScaleFactor = 0.5;
13、adjustsLetterSpacingToFitWidth //改变字母之间的间距来适应Label大小
myLabel.adjustsLetterSpacingToFitWidth = NO;
14、 lineBreakMode //设置文字过长时的显示格式             
label.lineBreakMode = NSLineBreakByCharWrapping;以字符为显示单位显
示,后面部分省略不显示。
label.lineBreakMode 
= NSLineBreakByClipping;剪切与文本宽度相同的内
容长度,后半部分被删除。
label.lineBreakMode 
= NSLineBreakByTruncatingHead;前面部分文字
以……方式省略,显示尾部文字内容。
label.lineBreakMode 
= NSLineBreakByTruncatingMiddle;中间的内容
以……方式省略,显示头尾的文字内容。
label.lineBreakMode 
= NSLineBreakByTruncatingTail;结尾部分的内容
以……方式省略,显示头的文字内容。
label.lineBreakMode 
= NSLineBreakByWordWrapping;以单词为显示单位显
示,后面部分省略不显示。
15、 adjustsFontSizeToFitWidth //设置字体大小适应label宽度 
label.adjustsFontSizeToFitWidth = YES;
16、attributedText:设置标签属性文本。
NSString 
*text = @"first";
NSMutableAttributedString 
*textLabelStr =
[[NSMutableAttributedString alloc]
initWithString:text];
[textLabelStr
setAttributes:@{NSForegroundColorAttributeName :
[UIColor lightGrayColor], NSFontAttributeName :
[UIFont systemFontOfSize:
17]} range:NSMakeRange(11,
10)];
label.attributedText 
= textLabelStr;
17、竖排文字显示每个文字加一个换行符,这是最方便和简单的实现方式。
label.text 
= @"请\n竖\n直\n方\n向\n排\n列";
label.numberOfLines 
= [label.text length];


18、计算UIlabel 随字体多行后的高度
CGRect bounds 
= CGRectMake(0, 0, 200, 300);
heightLabel 
= [myLabel textRectForBounds:bounds
limitedToNumberOfLines:
20]; //计算20行后的Label的Frame
NSLog(@"%f",heightLabel.size.height);
19、UILabel根据字数多少自动实现适应高度
UILabel 
*msgLabel = [[UILabel alloc]
initWithFrame:CGRectMake(
15, 45, 0, 0)];
msgLabel.backgroundColor 
= [UIColor lightTextColor];
[msgLabel setNumberOfLines:
0];
msgLabel.lineBreakMode 
= UILineBreakModeWordWrap;
msgLabel.font 
= [UIFont fontWithName:@"Arial" size:12];
CGSize size 
= CGSizeMake(290, 1000);
msgLabel.text 
= @"获取到的deviceToken,我们可以通过webservice服务提
交给.net应用程序,这里我简单处理,直接打印出来,拷贝到.net应用环境中使
用。
";
CGSize msgSie 
= [msgLabel.text sizeWithFont:fonts
constrainedToSize:size];
[msgLabel setFrame:CGRectMake(
15, 45, 290, msgSie.height)];


20、渐变字体Label
UIColor 
*titleColor = [UIColor colorWithPatternImage:[UIImage
imageNamed:
@"btn.png"]];
NSString 
*title = @"Setting";
UILabel 
*titleLabel = [[UILabel alloc]
initWithFrame:CGRectMake(
0, 0, 80, 44)];
titleLabel.textColor 
= titleColor;
titleLabel.text 
= title;
titleLabel.font 
= [UIFont boldSystemFontOfSize:20];
titleLabel.backgroundColor 
= [UIColor clearColor];
[self.view addSubview:titleLabel];
[titleLabel release];
21、Label添加边框
titleLabel.layer.borderColor 
= [[UIColor grayColor] CGColor];
titleLabel.layer.borderWidth 
= 2;
Altium Designer实战:手把手教你设计智能车竞赛疯狂电路组赛道(附封装库) 本文详细介绍了使用Altium Designer软件进行智能车竞赛“疯狂电路”组赛道设计的全流程实战指南。从理解比赛规则、搭建设计环境、创建专用元器件封装库,到电路布局、路径规划及设计输出验证,手把手教你高效完成符合计分标准的赛道图纸设计,并附上实用的封装库管理方法。 阅读详情

相关推荐

Blender - Shrinkwrap - 更方便的制作贴合模型的表面来建模

Shrinkwrap 修改器 使用 Blender 想要快速建模可以贴合现有模型表面的效果:衣服、皮肤、等效果,可以使用 Shrinkwrap 修改器,这个修改器的名字其实按照英文上的理解,翻译为:收缩的包裹效果 应用 如这块铁皮,它要贴合机身弯曲的效果,可以先建好一个铁皮,再 Shrinkwrap 到一个指定的网格上 留意的参数 Target 要贴合的对象(目前我已知是可以贴合到网格对象上,实在是方便) VertexGroup 顶点组,和之前讲到过的,顶点组可以组设顶点的权重,意思这个可.

Jave.Lin 的学习笔记 6068

iOS控件之UILbel篇

·UILable是iPhone界面最基本的控件,主要用来显示文本信息。 ·常用属性和方法有: 1、创建 CGRect rect = CGRectMake(100, 200, 50, 50); UILabel *label = [[UILabel alloc] initWithFrame:rect]; 2、text //设置和读取文本内容,默认为nil label.text = @”文本信息”; /

Allen_12138的专栏 543

DESeq2实战:利用LRT检验解析时间序列基因表达动态变化

本文详细介绍了如何使用DESeq2中的LRT检验分析时间序列基因表达数据,揭示基因表达动态变化模式。通过构建完整模型与简化模型比较,LRT检验能有效识别处理效应随时间变化的基因,适用于发育过程、疾病进展等研究。文章提供了从数据准备、模型构建到结果可视化的完整实战指南,并分享了高级技巧与常见问题排查方法。

weixin_29062671的博客 439

UILabel如何设置成透明

今天自定义了一个按钮,因为继承了UIControl类,而不是UIButton ,所有没有settitle方法。而在自定义按钮上增加一个UILabel视图的话就会盖住自定义按钮的背景图片。后来把Lable设置成了透明的,解决了问题。      下边是查到的资料:       UILabel缺省的背景是不透明的,创建后其背景颜色会覆盖背后的视图内容,而在开发时,一般是需要UILabel背景透明,仅

liufangbaishi2014的博客 1845

后向投影算法(BPA)-SAR成像算法系列(二)

SAR成像算法:后向投影算法(BPA)原理介绍及实现步骤解析。

yjh_2019的博客 1万+

我用WorkBuddy“克隆“了一个我,从此每句话像我自己说的

各位,做这件事花了多长时间?准备样本可能要半小时,提炼风格十分钟,保存固化再花十分钟。加起来不到一个小时。但这一个小时之后呢?你就拥有了一个"永远在线的文字替身"。以后写口播稿,打开WorkBuddy跟它说;写课程逐字稿,跟它说;写公众号文章,也跟它说。写出来的东西,你的学员一看——“嘿,这不就是翟猛老师说的嘛。说到这儿,可能有人会问:老师,我的风格有那么重要吗?AI写的不都挺好的吗?各位你想想看,你为什么愿意听某个老师的课?不只是因为他讲的内容好,更是因为你喜欢他讲话的方式。

weixin_39284145的博客 818

UILabel的详细使用

//设置阴影 [label setShadowColor:[UIColor blackColor]]; [label setShadowOffset:CGSizeMake(-2, 3)]; //设置是否能与用户进行交互 label.userInteractionEnabled = YES; //设置label中的文字是否可变,默认值是YES label.enabled = NO; /

随风而去 893

【音视频基础】一篇搞懂视频的各种封装格式

在现代多媒体处理中,视频封装格式扮演着至关重要的角色。不同的封装格式决定了视频文件的存储方式、兼容性以及功能特性。无论是观看高清视频、编辑电影剪辑,还是在互联网上流式传输内容,理解各种视频封装格式的基础知识都是必不可少的。在这篇文章中,我们将详细介绍常见的视频封装格式,探讨为什么需要这些格式,以及它们各自的功能和区别,帮助你在选择和使用视频格式时做出更明智的决定。WEBM理解各种视频封装格式的功能和区别对于选择合适的格式至关重要。

m0_62599305的博客 2477

UILabel设置选中部分文字高亮,自定义UILabel行间隔高度

第一步:找出高亮部分文字在整个文字中的位置: - (NSArray *)rangesOfString:(NSString *)searchString inString:(NSString *)str { NSMutableArray *results = [[NSMutableArray alloc] init]; NSRange searchRange = NSMakeRan

窃笑的博客 1502

Spring AI 实战:如何使用 MCP Server 搭建 MCP 天气查询服务

MCP(Model Context Protocol)是 Anthropic 提出的一种开放协议,它定义了AI 模型与外部世界交互的标准方式。通俗地说:大模型本身只拥有训练数据中的知识,它不知道今天的天气、无法查询你的数据库、不能调用你的内部 API。MCP 就是解决这个问题的"桥梁"——它让模型能够发现并使用外部工具(Tools),就像人用手去操作工具一样。角色职责对应依赖MCP Server暴露工具(Tool),供模型调用MCP Client连接 Server,让模型发现和使用工具本文我们先聚焦。

SmartSi 755

基于 YOLOv26 的食品包装缺陷检测系统:智能视觉质检方案

本文提出了一种基于YOLOv26深度学习的食品包装缺陷智能检测系统。该系统能够自动识别多种常见包装缺陷,包括密封不良、破损、污染、标签错误等8类问题。相比传统人工检测方法,该系统具有高精度、多类别分类、实时推理等优势。文章详细介绍了系统架构,包含数据采集、预处理、YOLOv26检测模型和后处理四个核心模块,并提供了完整的环境配置和数据处理代码实现。该系统为食品包装行业提供了一种高效、准确的智能视觉质检解决方案。

一键难忘的博客 683

关于UILabel的多行显示 UILabel numberOfLines

早上做了会实验结果如下: 1.N行完全自适应:         UILabel *testLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 30, 100, 21)];         NSString *txt = @"dffffffffffffffffffffffffffffffffffffffffffffffffffffff

shark0001的专栏 1万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

为 UILabel 添加内边距

这里有一个问题,就是rect 是label的大小/或者文字需要完全显示的大小,如果在这里给rect添加了内边距的处理,就是是绘制区域变小,可能是文本绘制/显示不完全。但是, UI设计难免会设计的文字距离label的边界有一些间距,为了更好的设置label的内边距可以利用UILabel的。//根据edgeInsets,修改绘制文字的bounds。// 修改绘制文字的区域,contentInsets增加bounds。//设置第一行和最后一行距离label的距离 和边距。方法在绘制文本的时候添加一个内边距。

wang_gwei的博客 1932

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

ios 根据文字数量计算UILabel高度(已修改)

由于留言的朋友给出了更好的方法,所以下面的代码都是它留言中给出的,优于我前面计算Lable高度方法,这个可以说非常的准,是IOS自带的计算UILABEL高度的方式. 一、实现代码 // 创建label UILabel *label = [[UILabel alloc] init]; label.backgroundColor = [UIColor redColor]; label.numberOf

wzhicsdn的博客 8293

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

UILabel

//标签类,UIlabel,是iPhone界面最基本的控件,主要用来显示文本信息     // UILabel *lable1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];     //可以改变lable1的位置     //lable1.frame = CGRectMake(CGFloat x,

leeyiusing 274

iOS UITextView,UITextField,UILabel

文章目录什么情况下使用标签,文本域和文本视图UITextViewUITextField 什么情况下使用标签,文本域和文本视图 UILabel:显示只读文本,最最基本的显示文字的,支持单行或多行, UITextField:可编辑文本,但是无法换行,只能在一行显示。当点击键盘上的return时会收到一个事件做一件事。当内容太长一行没有完全显示时,提供水平方向的字符的定位seeking。主要用于简短的文...

煮酒Shae 1399

Swift UILabel换行问题

UILabel只是用来现实文字,但是我们经常会遇到文字现实大小与Label大小不适应的问题,这个时候需要考虑换行了 我们直接看代码 let label1=UILabel(frame: CGRectMake(30, 50, 310,55)) label1.text="this determines the number of lines to draw and w

1万+

UILabel之Inset

最近项目中想要设置UILabel中文字的内边距也就是所谓的Inset,在UILable中没有发现类似的属性,一顿Google自己写了一个UILabel的子类来实现这个属性,当然也可以通过给UILabel套一个View的方式来实现,不过这个需求是在写完之后发现的,所以通过子类的方式改起来更好一些。 首先找到了一部分说明需要重写drawText(in rect: CGRect)这个方法,代码大概就是

l7022995的专栏 1347

UILabel Category 计算UILabel内容大小

UILabel+ContentSize.h#import <UIKit/UIKit.h> @interface UILabel (ContentSize) - (CGSize)contentSize; @endUILabel+ContentSize.m#import "UILabel+ContentSize.h" @implementation UILabel (Co...

anshansui2885的博客 175

UILabel的minimumScaleFactor

有时候我们需要UIlabel根据字数多少来减小字体大小,使得UIlabel能够显示全所有的文字。你需要做的就是设置minimumScaleFactor。minimumScaleFactor默认值是0,此时最小字体就是设置的字体大小,和1的效果一样。 因此 1、0 2、另外要设置adjustsFontSizeToFitWidth=YES. 3、还有需要UIlabel的行数是1的时候才有用,多行

jf200614379的专栏 8788

对UILabel配置手势识别的方法

将UILabel作为输入框,进行触发事件可以有两种方式。 在.h文件中增加接口类UIGestureRecognizerDelegate> 1:直接设置 - (void)viewDidLoad { [super viewDidLoad]; //Tap Touch UITapGestureRecognizer *_tapGesture = [[UITapGestureRe

sandy_kisa的专栏 2251

MLLabel与原生UILabel对比:10个你必须知道的优势

在iOS开发中,UILabel是我们最常用的UI组件之一。然而,当我们需要更丰富的文本展示功能时,原生UILabel就显得力不从心了。今天,我将为大家介绍一个强大的UILabel替代方案——MLLabel,并详细对比它与原生UILabel的10个关键优势。 MLLabel是一个基于TextKit构建的UILabel替代组件,专为iOS开发者设计,提供了远超原生UILabel的文本处理能力。如果你

gitblog_00431的博客 637

uilabel 垂直居中对齐_给UILabel的文字添加垂直对齐的方式

UILabel的文字默认是垂直居中显示的,而且UILabel并没有为我们提供设置垂直对齐方式的选项,所以要自己想办法了。我的办法是给UILabel添加一个Category,来修改UILabel的绘制。话不多说上代码:// UILabel+VerticalAlignment.h#import @interface UILabel (VerticalAlignment)// 文字顶部对齐- (voi...

weixin_29469195的博客 1455

UIlabel复制

关于UILabel的扩展网上有很多优秀的框架,个人平常在用的基本就是TTTAttributedLabel,对于一般的文本操作(例如设置行间距等)而言,个人感觉TTTAttributedLabel够用了,如果是再复杂点的富文本,可以参考MLEmojiLabel或MLLabel,这两个扩展UILabel是同一个作者,继承自TTTAttributedLabel,可以区分网址,邮箱,电话号码等特殊文本内容

u011915116的博客 790

uilabel 支持html,UILabel加载HTML

NSString *string1 = @"什么情况";UILabel *label1 = [[UILabel alloc]initWithFrame:CGRectMake(100, 100, 200, 20)];NSMutableAttributedString *attribute = [[NSMutableAttributedString alloc]initWithData:[string...

weixin_30898555的博客 852
上一篇: 关于 UIButton 的总结
下一篇: 关于 UITextField 的总结
style_施
博客等级 码龄11年 11粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值