iOS发展系列II - UILabel 使用摘要
// 初始化标签
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 100, 300, 150)];
// 设置标签文字
label.text = @"This is a test text.This is a test text.This is a test text.";
// 设置标签文字字体
// 使用系统字体
label.font = [UIFont systemFontOfSize:20];
// 使用系统字体加粗
//label.font = [UIFont boldSystemFontOfSize:20];
// 指定字体
//label.font = [UIFont fontWithName:@"Arial" size:20];
// 设置标签文字颜色
label.textColor = [UIColor redColor];
// 设置标签背景颜色
label.backgroundColor = [UIColor clearColor];
// 设置标签文字对齐方式
label.textAlignment = NSTextAlignmentCenter; // iOS7中文本对齐方式有下面几种:
// enum {
// NSTextAlignmentLeft = 0, 左对齐。默认
// NSTextAlignmentCenter = 1, 居中对齐
// NSTextAlignmentRight = 2, 右对齐
// NSTextAlignmentJustified = 3, 在一个段落的最后一行自然对齐
// NSTextAlignmentNatural = 4, 默认对齐方式
// } NSTextAlignment; // 设置标签文字自己主动折行方式
label.lineBreakMode = NSLineBreakByWordWrapping; // enum {
// NSLineBreakByWordWrapping = 0, 以单词为显示单位显示。后面部分省略不显示。默认
// NSLineBreakByCharWrapping, 以字符为显示单位显示,后面部分省略不显示
// NSLineBreakByClipping, 剪切与文本宽度同样的内容长度。后半部分被删除
// NSLineBreakByTruncatingHead, 开头省略,显示尾部文字内容
// NSLineBreakByTruncatingTail, 结尾省略,显示开头的文字内容
// NSLineBreakByTruncatingMiddle 中间省略。显示头尾的文字内容
// } NSLineBreakMode; // 设置标签文字行数,0表示多行
label.numberOfLines = 0;
// 设置阴影颜色
[label setShadowColor:[UIColor blackColor]];
// 设置阴影偏移量
[label setShadowOffset:CGSizeMake(-1, -1)];
// 改变字母之间的间距来适应Label大小
label.adjustsLetterSpacingToFitWidth = NO;
// 设置字体大小适应label宽度
label.adjustsFontSizeToFitWidth = YES;
// 假设adjustsFontSizeToFitWidth属性设置为YES。这个属性就来控制文本基线的行为
label.baselineAdjustment = UIBaselineAdjustmentNone; // 文本基线类型有下面几种:
// typedef enum {
// UIBaselineAdjustmentAlignBaselines, 文本最上端与中线对齐。默认
// UIBaselineAdjustmentAlignCenters, 文本中线与标签中线对齐
// UIBaselineAdjustmentNone, 文本最底端与标签中线对齐
// } UIBaselineAdjustment; //设置是否能与用户进行交互
label.userInteractionEnabled = YES;
//设置标签文字是否可变。默觉得YES
label.enabled = NO;
// 设置标签边框
label.layer.borderColor = [[UIColor grayColor] CGColor];
// 设置边框粗细
label.layer.borderWidth = 2; // 多行标签高度自适应
// 设置标签字体属性
NSDictionary *labelAttributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:20], NSFontAttributeName, nil];
// 获取标签依据文本和字体自适应后的高度,此处CGSizeMake为最大外框大小
CGFloat labelHeight = [@“This is a test text.This is a test text.This is a test text.” boundingRectWithSize:CGSizeMake(280, 200) options:NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading attributes:labelAttributes context:nil].size.height;
本文固定链接:http://www.itechzero.com/ios-development-series-two-uilabel-usage-summary.html。转载请注明出处。
版权声明:本文博客原创文章。博客,未经同意,不得转载。
iOS发展系列II - UILabel 使用摘要的更多相关文章
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- iOS开发系列--Swift语言
概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...
- iOS开发系列--App扩展开发
概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...
- iOS开发系列--Swift进阶
概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...
- iOS开发系列--通知与消息机制
概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情.iOS中通知机制又叫消息机制,其包括两类:一类是本地 ...
- iOS开发系列--数据存取
概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation框架的文章中提到归档.plist文件存储, ...
- iOS开发系列--并行开发其实很容易
--多线程开发 概览 大家都知道,在开发过程中应该尽可能减少用户等待时间,让程序尽可能快的完成运算.可是无论是哪种语言开发的程序最终往往转换成汇编语言进而解释成机器码来执行.但是机器码是按顺序执行的, ...
- 【转】iOS开发系列--数据存取
原文: http://www.cnblogs.com/kenshincui/p/4077833.html#SQLite 概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储 ...
- iOS发展 - 使用您自己的自定义字体
一位同事问我最后一次,XXapp字体如何萌啊? 我也想提出萌哒哒的字体!然后,今天有这blog. 首先,我们正处于iOS发展,苹果给了我们很多的字体,当然,我就不一一列举在这里,英文,小汤表示看不懂啦 ...
随机推荐
- windows phone (27) 基础Button
原文:windows phone (27) 基础Button Button 在wp7中因其灵活性经常会用到,我们在ContentPanel中直接添加Button,button默认状态下是把整个grid ...
- POJ 3450 Corporate Identity KMP解决问题的方法
这个问题,需要一组字符串求最长公共子,其实灵活运用KMP高速寻求最长前缀. 请注意,意大利愿父亲:按照输出词典的顺序的规定. 另外要提醒的是:它也被用来KMP为了解决这个问题,但是很多人认为KMP使用 ...
- python可变交换性能优化
离许多新的压力python性能优化见交换两个变量值可以使用 a,b = b,a 这样能够提高性能 >>> from timeit import Timer >>> ...
- Ubuntu 13.10 安装 Unity 8 试用截图
关于 Unity 8 有很多报道,Unity 8 相对于 Unity 7 变化相当大,这是 Ubuntu 团队打造的一款通用于 PC.手机.平板的桌面. Unity 8 已经登陆 ubuntu 13. ...
- 怎么样Eclipse IDE for C/C++ Developers正确编译GTK规划?(解决)
<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 25.99 ...
- IOS_多线程_ASI_AFN_UIWebView
H:/0730/00_多线程4票种_ViewController.h // // ViewController.h // 卖票 // // Created by apple on 13-7-29. / ...
- android下获取无线wif信号、ssid、MAC等操作类
一个android下获取无线wif信号.ssid.MAC等操作的类. WifiAdmin.java package com.afu; import java.util.List; import and ...
- MySql语句大全:创建、授权、查询、修改等(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 一.用户创建.权限.删除 1.连接MySql操作 连接:mysql -h 主机地址 -u 用户 ...
- unity简易小地图的实现(NGUI)
首先,我们在场景中添加一个摄像机叫做minimapCamera, 把上面的Audio Listener组件去掉,调整摄像机位置,将其置于角色正上方,如图 新建一个Texture我们叫做minimapT ...
- hdu 4920 Matrix multiplication(矩阵乘法)2014多培训学校5现场
Matrix multiplication Time ...