通过计算的文本宽度,由于小数四舍五入引起的文字显示不全问题

简介: 通过计算的文本宽度,由于小数四舍五入引起的文字显示不全问题

通过计算的文本宽度,由于小数四舍五入引起的文字显示不全问题:

通过计算的文本宽度,若出现小数,而手机的屏幕有最低分辨率(BG_1PX (1.0f / [UIScreen mainScreen].scale)),标签的宽度只能大于文本实际的宽度才能正常显示,否则会出现显示不出来的问题。

解决办法是:发现计算的文本宽度带小数(小数点后全是零不算)就直接把计算出的宽度加1像素。

具体代码:

    NSDictionary *attributes = @{NSFontAttributeName :font};     //字体属性,设置字体的font
    CGSize maxSize = CGSizeMake(FULL_WIDTH, FULL_HEIGHT);     //设置字符串的宽高
    CGSize size = [maxTitle boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attributes context:nil].size;
    CGFloat labelWidth = size.width;
    if((labelWidth != ((NSInteger)labelWidth)))
    {
        labelWidth = labelWidth + 0.5;
    }

出问题的运行数据如下:

出问题的效果如下

目录
相关文章
简单好用的图片取色器【可取RGB数值】
这篇文章介绍了如何使用Snipaste工具进行截图和取色,包括按下快捷键F1截图、选择图片区域、移动鼠标取色以及复制颜色值的步骤,并提供了操作界面的截图。
|
5月前
输出格式:限定宽度
`printf()`函数允许设定占位符的最小宽度,例如 `%nd` 强制数字至少占n位。若实际位数少于n,前面会填充空格(默认右对齐)。要使输出左对齐,可在%后加"-",如`%-nd`。示例展示了不同情况下`printf()`的输出效果。
36 0
|
5月前
根据字符串内容、最大宽度和字体计算行宽和高度
根据字符串内容、最大宽度和字体计算行宽和高度
34 0
|
11月前
|
前端开发
文字不换行超出后左右滑动
文字不换行超出后左右滑动
54 0
[虚幻引擎 UE5] EditableText(单行可编辑文本) 限制只能输入数字并且设置最小值和最大值
本蓝图函数可以格式化 EditableText 控件输入的数据,让其只能输入一定范围内的整数。
450 0
|
算法 前端开发 JavaScript
图片转ASCII字符图案的原理(可调整亮度对比度 宽高度)
平时看代码会看到很多标点符号的字符拼起来的图案, 特别有趣, 像kong(一个高性能API网关), 除了源代码里面有图案, 命令行也藏了彩蛋. 我今天要玩的会深入一点: 基于图片的灰度值来生成图案. 此时的图片不单单有轮廓, 还有光影效果, 也就是素描中提及的黑白灰.
89 0
多行文本溢出显示省略号
多行文本溢出显示省略号
60 0
|
前端开发 JavaScript API
固定元素宽度根据文本的长度缩小字号,超出缩小字号
固定元素宽度根据文本的长度缩小字号,超出缩小字号
420 0
固定元素宽度根据文本的长度缩小字号,超出缩小字号
|
前端开发 程序员
小细节:盒模型里面连续输入英文和数字不会自动换行,汉字会自动换行
小细节:盒模型里面连续输入英文和数字不会自动换行,汉字会自动换行
93 0
|
前端开发
解决字母或数字溢出盒子(文字超出时不自动换行)
解决字母或数字溢出盒子(文字超出时不自动换行)
342 0
解决字母或数字溢出盒子(文字超出时不自动换行)