// 初始化标签
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 使用摘要的更多相关文章

  1. iOS开发系列--网络开发

    概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...

  2. iOS开发系列--Swift语言

    概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...

  3. iOS开发系列--App扩展开发

    概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...

  4. iOS开发系列--Swift进阶

    概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...

  5. iOS开发系列--通知与消息机制

    概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情.iOS中通知机制又叫消息机制,其包括两类:一类是本地 ...

  6. iOS开发系列--数据存取

    概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation框架的文章中提到归档.plist文件存储, ...

  7. iOS开发系列--并行开发其实很容易

    --多线程开发 概览 大家都知道,在开发过程中应该尽可能减少用户等待时间,让程序尽可能快的完成运算.可是无论是哪种语言开发的程序最终往往转换成汇编语言进而解释成机器码来执行.但是机器码是按顺序执行的, ...

  8. 【转】iOS开发系列--数据存取

    原文: http://www.cnblogs.com/kenshincui/p/4077833.html#SQLite 概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储 ...

  9. iOS发展 - 使用您自己的自定义字体

    一位同事问我最后一次,XXapp字体如何萌啊? 我也想提出萌哒哒的字体!然后,今天有这blog. 首先,我们正处于iOS发展,苹果给了我们很多的字体,当然,我就不一一列举在这里,英文,小汤表示看不懂啦 ...

随机推荐

  1. Mysql学习笔记(一)数据类型

    原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型     Mysql数据类型             含义(有符号)     tinyint(m ...

  2. 通达OA 新旧两种数据库连接方式

    老的连接方式: include_once("/inc/conn.php"); $cursor = exequery($connection,$query); 新的连接方式: inc ...

  3. .net SMTP发送Email 更新(可带附件)

    public static void sendEmail(string toAddress, string emailbody)         {             var fromAddre ...

  4. 使用Spring的@Autowired 实现DAO, Service, Controller三层的注入(转)

    简述: 结合Spring和Hibernate进行开发 使用@Autowired实现依赖注入, 实现一个学生注册的功能,做一个技术原型 从DAO(Repository) -> Service -& ...

  5. Android架构分析之LOG模块

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Android版本:2.3.7_r1 Linux内核版本:android-goldfish-2.6.29 Andro ...

  6. 修改easyui datebox默认日期格式

    问题描述: 根据jquery easyui datebox demo中给的示例,导入和使用datebox, 发现日期格式为: 6/22/2011, 其他的今天和关闭也是 Today, Close, 对 ...

  7. 如何处理 Windows Phone 8 动态砖变成黑白砖

    原文:如何处理 Windows Phone 8 动态砖变成黑白砖 ? 问题的来龙去脉 我的 Windows Phone 8 动态砖变成黑白砖,所有图示和文字变成黑白,该如何处理? ? 问题的发生原因 ...

  8. vc++笔记十一

    一.LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 连接器LNK是通过调用cvtres.exe完毕文件向coff格式的转换的,所以出现这样的错误的原因就是cvtres.exe出现了问题 ...

  9. UVA 11248 - Frequency Hopping(网络流量)

    UVA 11248 - Frequency Hopping 题目链接 题意:给定一个网络,如今须要从1到N运输流量C,问是否可能,假设可能输出可能,假设不可能,再问能否通过扩大一条边的容量使得可能,假 ...

  10. 修改系统环境变量 cmd命令

    详细大家对cmd的使用都有了一些简单的了解,但是困扰大家的主要的问题就是: cmd命令修改环境变量有两种方式:1. 短期内有效,在关闭dos窗口后就自动失效 2.长期有效,关闭dos窗口后还有效 下面 ...