iPhone – Wrap Text in UILabel

2023-11-23 12:38
文章标签 uilabel text iphone wrap

本文主要是介绍iPhone – Wrap Text in UILabel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

iPhone – Wrap Text in UILabel

In UILabel, there is an adjustsFontSizeToFitWidth property which will automatically adjust the text font size to fit the UILabel width.

view source print ?
1UILabel *aLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 20.0)];
2aLabel.adjustsFontSizetoWidth = YES; // This is a must
3aLabel.minimumFontSize = 8.0f;
4aLabel.numberOfLines = 1; // This is a must too =.=

But this only work for numberOfLines = 1
 

Luckily, i found a workaround from a blog post. Here comes to the solution.

view source print ?
01// Initialize the Label, Text and Font
02UILabel *aLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 64.0, 320.0, 60.0)];
03UIFont *aFont = [UIFont fontWithName:@"Helvetica" size:28.0];
04NSString *aText = @"And I will love you, baby - Always. And I'll be there forever and a day - Always. I'll be there till the stars don't shine. Till the heavens burst and the words don't rhyme. And I know when I die, you'll be on my mind. And I'll love you - Always.";
05 
06// Logic for adjusting the size
07for (NSInteger i = 28; i > 8; i--) {
08    aFont = [aFont fontWithSize:i];
09    // Limit the width to UILabel width
10    CGSize constraintSize = CGSizeMake(320.0f, MAXFLOAT);
11    CGSize labelSize = [aText sizeWithFont:aFont constrainedToSize:constraintSize lineBreakMode:UILineBreakModeWordWrap];
12    // Break the loop when text height < UILabel height
13    if (labelSize.height <= 60.0f) {
14        break;
15    }
16}
17 
18// Set the font and text for UILabel
19aLabel.font = aFont;
20aLabel.text = aText;
21aLabel.numberOfLines = 4;
22 
23// Add the Label to the view and release it
24[self.view addSubview:aLabel];
25[aLabel release];


From:  http://ykyuen.wordpress.com/2010/07/03/iphone-wrap-text-in-uilabel/

这篇关于iPhone – Wrap Text in UILabel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/418004

相关文章

Android fill_parent、match_parent、wrap_content三者的作用及区别

这三个属性都是用来适应视图的水平或者垂直大小,以视图的内容或尺寸为基础的布局,比精确的指定视图的范围更加方便。 1、fill_parent 设置一个视图的布局为fill_parent将强制性的使视图扩展至它父元素的大小 2、match_parent 和fill_parent一样,从字面上的意思match_parent更贴切一些,于是从2.2开始,两个属性都可以使用,但2.3版本以后的建议使

【Python报错已解决】AttributeError: ‘list‘ object has no attribute ‘text‘

🎬 鸽芷咕:个人主页  🔥 个人专栏: 《C++干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、问题描述1.1 报错示例1.2 报错分析1.3 解决思路 二、解决方法2.1 方法一:检查属性名2.2 步骤二:访问列表元素的属性 三、其他解决方法四、总结 前言 在Python编程中,属性错误(At

【ReactJS】困惑于text/babel与browser.js还是babel.js?

使用JSX   使用JSX,可以极大的简化React元素的创建,JSX抽象化了React.createElement()函数的使用,其语法风格类似于HTML语法风格。对比如下代码可以让你更好的理解这一点。 // 使用React.createElement()return React.createElement('div',null,'Hello',this.props.name);//使用J

Android:EditText在hint字体大小和text字体大小不一致时的设置方法

今天碰到一个需求,有一个输入框EditText,要求输入某项金额,要求在未输入文字之前,hint提示,输入文字之后显示输入的文字,要求是未输入内容时hint字体大小为14sp,输入金额之后字体大小要变成30sp。,可是EditText本身没有这个属性可以设置,怎么办呢,只有在代码中添加监听事件了: /*** 添加监听,在hint时和text时切换字体大小*/cetMoney.addTextCha

Sublime Text 3搭建PHP开发环境说明

1、设置环境变量 Windows系统环境变量path增加php.exe所在目录路径 2、创建PHP编译系统 添加 PHP 的 build system,如图所示, Tools->Build System-> New Build System : 新建一个,默认的内容是:{ "shell_cmd": "make"}修改为:{ "cmd": ["php", "$file"], "file_re

多字节、宽字节、兼容字节(TEXT) 相关操作汇总

常用函数对照 ANSIUNICODE通用说明数据类型(char.h)(wchar.h)(tchar.h) charwchar_tTCHAR char *wchar_t *TCHAR* LPSTRLPWSTRLPTSTR LPCSTRLPCWSTRLPCTSTR     字符串转换atoi_wtoi_ttoi把字符串转换成整数(int)atol_wtol_ttol把字符串转换成长整型数(long)

3个恢复方法详解:iPhone手机快速找回备忘录

当我们在工作或者是学习时,总会有一些灵光乍现的好想法,我们通常会将这些想法记录在iPhone手机备忘录中,以便随时查看。但是,如果出现不慎删除备忘录的情况,iPhone该如何找回备忘录呢?不用担心,本文专门为大家整理了3个方法,可以帮助大家快速找回那些不慎删除的备忘录。下文将展开3个恢复方法的详细介绍。 方法一:在【最近删除】里找回备忘录 苹果手机备忘录误删怎么恢复?苹果手机的备忘录如

Sublime Text 3常用快键键总结

通用(General) ↑↓←→:上下左右移动光标,注意不是不是 KJHL !Alt:调出菜单Ctrl + Shift + P:调出命令板(Command Palette)Ctrl + ` :调出控制台 编辑(Editing) Ctrl + Enter:在当前行下面新增一行然后跳至该行Ctrl + Shift + Enter:在当前行上面增加一行并跳至该行Ctrl + ←/→:进行逐词移动

sublime_text中如何使用快捷键打开默认浏览器

原创:http://blog.csdn.net/u013383042/article/details/51058899 1、在SublimeText下打开该路径:preference - key bindings - user 2、在以下打开窗口中输入如下语句: {"keys": ["ctrl+r"],"command": "open_in_browser"} 如上图所示,”ctrl+

sublime text 3 显示空格和Tab

因为sublime text3确实太好用了所以也用它写代码了,可是在Python3 中不支持Tab键和空格键混用所以要改变显示方式,以便方便使用,突然 发现网上的资料太少,所以我把它贴了出来希望帮助更多的人 第一步把preferences.sublime-setting-Default里面 的"draw_white_space": "selection",复制到preferences.