// UILabel -> UIView  

// UILabel用来显示文字内容

//创建一个Label,一般都直接通过initWithFrame确定位置跟大小

UILabel *lb = [[UILabel alloc]initWithFrame:CGRectMake(50, 80, 200, 200)];

//设置背景色,系统默认是白色背景

lb.backgroundColor = [UIColor grayColor];

//设置文字

lb.text = @"Application windows are expected to have a root view controller at the end of application launch";

//设置文字的颜色后,并通过colorWithAlphaComponent设置它的透明度(0~1),系统默认为黑色

lb.textColor = [[UIColor redColor] colorWithAlphaComponent:0.5];

//设置字体大小,系统默认为17

lb.font = [UIFont systemFontOfSize:20];

//设置粗体,同时设置字体大小

//lb.font = [UIFont boldSystemFontOfSize:20];

//设置斜体,中文字体不生效

//lb.font = [UIFont italicSystemFontOfSize:20];

//  使用其他字体

//lb.font = [UIFont fontWithName:@"Avenir Next Condensed" size:20];

//倘若需要,可以通过以下函数来输出iPhone所有的字体库

//NSLog(@"%@",[UIFont familyNames]);

//设置字体的对齐方式

/*

NSTextAlignmentLeft            系统默认值

NSTextAlignmentCenter        字体居中

NSTextAlignmentRight          字体右对齐

NSTextAlignmentJustified      段落的最后一行是natural-aligned

NSTextAlignmentNatural        跟左对齐没什么差别,目前还不怎么了解,欢迎指点

*/

lb.textAlignment =  NSTextAlignmentCenter;

  //设置文字的阴影效果

lb.shadowColor = [UIColor blueColor];

 //设置阴影偏移量(偏移方向,自己通过多多尝试就明白了,这里就不做过多的讲述)

lb.shadowOffset = CGSizeMake(-5, 5);

效果图如下

  

 //文字的折行模式

/*

NSLineBreakByWordWrapping          以单词作为截取,以单词换行

NSLineBreakByCharWrapping           以字符作为截取,以字符换行

NSLineBreakByClipping               以单词为截取,以字符换行

NSLineBreakByTruncatingHead         Truncate at head of line: "...wxyz"

NSLineBreakByTruncatingTail          Truncate at tail of line: "abcd..."

NSLineBreakByTruncatingMiddle        Truncate middle of line:  "ab...yz

*/

  [注意]换行模式要结合下面的numberOfLines才能看得出效果

lb.lineBreakMode = NSLineBreakByTruncatingHead;

// 换行模式,默认为0,代表可以任意行

lb.numberOfLines = 3 ;

 //设置文字高亮时的颜色[两者要结合使用才能看出效果]

lb.highlightedTextColor = [UIColor yellowColor];

//设置文字是否高亮

lb.highlighted = YES;

  

  //设置是否与用户互动,默认值为NO,一般都是没去修改它的,因为几乎没有用标签于用户互动

lb.userInteractionEnabled = NO;

//是否可变

lb.enabled = NO;

  //最后说一个很重要的,也经常在标签要用到的方法

  /*

通过text文字的多少来计算文字的宽与高

参数1: label最大显示的矩形区域,比如下面的320跟 CGFLOAT_MAX就是这个Label标签的宽跟高的最大值

参数2: 计算的附加条件,例如换行模式

一般使用: NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin

Leading: 行与行之间的间隔

Origin: 每一行所占据的矩形区域

参数3: 是一个字典,计算一些属性,比例文字的大小等

  返回值是一个CGRect

*/

CGSize size = [text boundingRectWithSize:CGSizeMake(320, CGFLOAT_MAX) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName : [UIFont systemFontOfSize:20]} context:NULL].size;

  

 新手可以试着全部用标签做出这个界面,练练手

UILabel用法的更多相关文章

  1. iOS基础UI控件介绍-Swift版

    iOS基础UI控件总结 iOS基础控件包括以下几类: 1.继承自NSObject:(暂列为控件) UIColor //颜色 UIImage //图像 2.继承自UIView: 只能相应手势UIGest ...

  2. UILabel 的属性(用法)方法

    Label 中常用的方法属性 UILabel *label =[[UILabel alloc]initWithFrame:CGRectMake(90, 100, 140, 40)];//设置Label ...

  3. Swift - 文本标签(UILabel)的用法

    1,标签的创建 1 2 3 4 5 6 7 8 9 10 import UIKit class ViewController: UIViewController {     override func ...

  4. iOS UIlabel怎么加载html字符串 富文本的用法

    要加载html字符串,用人说,直接用webView啊!但是,有时候我们只需要显示2行文字,如此少的内容却要在复杂的UI排版中加入一个占用资源较多的webview,得不偿失.这里要说的是,我们其实可以用 ...

  5. swift - UILabel的用法

    1.label的声明 class FirstyViewController: UIViewController { var label = UILabel()//初始化 override func v ...

  6. 给iOS开发新手送点福利,简述UILabel的属性和用法

    UILabel属性 1.text:设置标签显示文本. label.text = @"我是Label"; 2.attributedText:设置标签属性文本. NSString *t ...

  7. UILabel常见用法

    //创建一个UILabel UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(50 , 100 , 200 , 560)]; // ...

  8. UI 经常用法总结之--- UILabel UITextField (不断更新中)

    UILabel : UIView <NSCoding> 1.创建一个UILabel对象 UILabel *label = [[UILabel alloc]initWithFrame:CGR ...

  9. UILabel基本用法

    UILabel *_label = [[UILabel alloc]initWithFrame:CGRectMake(, self.view.frame.size.height*)]; _label. ...

随机推荐

  1. Android学习笔记之短信验证码的获取和读取

    PS:最近很多事情都拖拖拉拉的..都什么办事效率啊!!! 还得吐槽一下移动运营商,验证码超过五次的时候,直接把我的手机号封闭.真是受够了. 学习笔记: 1.Android之如何获取短信验证码. 2.如 ...

  2. CSS魔法堂:说说Float那个被埋没的志向

    前言  定位系统中第一难理解就是Normal flow,而第二就非Float莫属了,而Float难理解的原因有俩,1. 一开头我们就用错了:2. 它跟Normal flow靠得太近了.本文尝试理清Fl ...

  3. IOS从视频中获取截图

    从视频中获取截图: NSString *movpath =[[NSBundle mainBundle] pathForResource:@”iosxcode4″ ofType:@”mov”]; mpv ...

  4. Windows 8 应用商店无法连接到网络的终极完美解决方案

    当你看到以下几个步骤的时候,你可能会不以为然,因为你已经试过了,还是没成功,依然提示"你的电脑没有连接到Internet或者现在无法使用Windows应用商店,要使用Windows应用商店, ...

  5. 他答对一半(打一字)asp.net开源简答题项目

    先出个字谜: 他答对一半(打一字) 你猜出来了没? 可以到这个网址答题:http://m.hovertree.com/miyu/bjae/4fpmm2td.htm 看你的答案是否正确. 这是ASP.N ...

  6. [DBW]一个小巧的Class方案

    (function(){ function Extend(func,proto){ func.prototype.__proto__=proto.prototype; Object.definePro ...

  7. 介绍开源的.net通信框架NetworkComms框架 源码分析(二)ConnectionInfo

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  8. iOS 阶段学习第25天笔记(iOS沙盒机制介绍)

    iOS学习(OC语言)知识点整理 一.iOS沙盒机制介绍 1)概念: 每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用放入文件 系统隔离,ios系统不允许访问 其他应用的应用沙盒 ...

  9. 基于吉日嘎拉的通用权限管理WebForm版扩展:字典选项管理和缓存管理

    关于字典管理,其实就是2个表,一个表记录字典和对应表,另一个表记录字典内容.我这里改名为字典选项,其实是一个意思.直接上图: 这里的字典选项是分子系统的,每个子系统可以有自己的单独字典,方便管理.但是 ...

  10. ASP.NET MVC中使用Dropzone.js实现图片的批量拖拽上传

    说在前面 最近在做一个MVC相册的网站(这里),需要批量上传照片功能,所以就在网上搜相关的插件,偶然机会发现Dropzone.js,试用了一下完全符合我的要求,而且样式挺满意的,于是就在我的项目中使用 ...