文档学习 - UILabel - 属性详解
#import "ViewController.h"
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 1.
UILabel *label = [[UILabel alloc] init];
// 1.1 text
label.text = @"// ViewController.m01-UILabelCreated byjiaguanglei on 15/9/30Copyright (c) 2015年 roseonly. All rights reserved.";
// 1.2 font
/**
const CGFloat UIFontWeightUltraLight;
const CGFloat UIFontWeightThin;
const CGFloat UIFontWeightLight;
const CGFloat UIFontWeightRegular;
const CGFloat UIFontWeightMedium;
const CGFloat UIFontWeightSemibold;
const CGFloat UIFontWeightBold;
const CGFloat UIFontWeightHeavy;
const CGFloat UIFontWeightBlack;
+ (UIFont *)systemFontOfSize:(CGFloat)fontSize;
+ (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize; -- 粗体
+ (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize; -- 斜体
+ (UIFont *)systemFontOfSize:(CGFloat)fontSize weight:(CGFloat)weight NS_AVAILABLE_IOS(8_2);
*/
label.font = [UIFont systemFontOfSize:20 weight:UIFontWeightBlack];
// 1.3 textColor
label.textColor = [UIColor magentaColor];
// 1.4 shadowColor
label.shadowColor = [UIColor greenColor];
// 1.5 shadowOffset
label.shadowOffset = CGSizeMake(2, 2);
// 1.6 textAlignment
/**
NSTextAlignmentLeft = 0, // Visually left aligned
NSTextAlignmentCenter = 1, // Visually centered
NSTextAlignmentRight = 2, // Visually right aligned
NSTextAlignmentJustified = 3, // Fully-justified. The last line in a paragraph is natural-aligned.
NSTextAlignmentNatural = 4, // Indicates the default alignment for script
*/
label.textAlignment = NSTextAlignmentLeft;
// 1.7 lineBreakMode
/** --- 设置换行格式
* with long lines
NSLineBreakByWordWrapping = 0, --- 以单词为单位, 自动换行, 显示不全, 没有省略号
NSLineBreakByCharWrapping --- 以字符为单位自动换行, 没有省略号
NSLineBreakByClipping --- 直接切除, 可能显示半个字符
NSLineBreakByTruncatingHead --- 在行头部, 显示省略号
NSLineBreakByTruncatingTail --- 在行尾部, 显示省略号
NSLineBreakByTruncatingMiddle --- 在行中间, 显示省略号
*/
label.lineBreakMode = NSLineBreakByTruncatingTail;
// 1.8 highlighted
// 1.8.1 highlightedTextColor
label.highlighted = NO;
label.highlightedTextColor = [UIColor blackColor];
// 1.9 enabled
// 1.9.1 userInteractionEnabled
label.enabled = YES;
label.userInteractionEnabled = YES;
// 1.10 numberOfLines
label.numberOfLines = 0;
// 1.11 adjustsFontSizeToFitWidth
label.adjustsFontSizeToFitWidth = YES;
// 1.11.1 adjustsLetterSpacingToFitWidth -- 已过期, 用NSKernAttributeName替换
// 1.11.2 minimumFontSize --- -- 已过期, 用minimumScaleFactor替代
label.minimumScaleFactor = .8;
// 1.11.3 baselineAdjustment
/**
UIBaselineAdjustmentAlignBaselines = 0, // default.
UIBaselineAdjustmentAlignCenters,
UIBaselineAdjustmentNone,
*/
label.baselineAdjustment = UIBaselineAdjustmentNone;
// 1.12 -- 绘图中可能会用到
/**
- (CGRect)textRectForBounds:(CGRect)bounds limitedToNumberOfLines:(NSInteger)numberOfLines;
- (void)drawTextInRect:(CGRect)rect;
@property(nonatomic) CGFloat preferredMaxLayoutWidth NS_AVAILABLE_IOS(6_0);
*/
// 1.13 attributedText
NSDictionary *attrs = @{NSForegroundColorAttributeName : [UIColor redColor]};
NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:label.text attributes:attrs];
label.attributedText = attrString;
CGSize size = [UIScreen mainScreen].bounds.size;
label.frame = CGRectMake(10, 100, size.width - 20, 50);
label.backgroundColor = [UIColor lightGrayColor];
[self.view addSubview:label];
}
文档学习 - UILabel - 属性详解的更多相关文章
- elasticsearch系列三:索引详解(分词器、文档管理、路由详解(集群))
一.分词器 1. 认识分词器 1.1 Analyzer 分析器 在ES中一个Analyzer 由下面三种组件组合而成: character filter :字符过滤器,对文本进行字符过滤处理,如 ...
- 一个完整的WSDL文档及各标签详解
<?xml version="1.0" encoding="UTF8" ?> <wsdl:definitions targetNamespac ...
- 使用vs code编写Markdown文档以及markdown语法详解
首先安装vscode工具,下载地址如下: https://code.visualstudio.com/ 在vs code的扩展中安装: Markdown Preview Enhanced 这款插件,安 ...
- MongoDB开发深入之一:文档数据关系模型详解(一对多,多对多)
文档关联模型通常有3种方式: 嵌入式(一对一.一对多) 后期手动统一ID处理(一对多.多对多) References引用(一对一.一对多) 文档树模型通常有3种方式: 父引用(Parent Refer ...
- 轻松学习Linux之Shell文件和目录属性详解
轻松学习Linux之Shell文件和目录属性详解 轻松学习Linux之理解Sitcky 轻松学习Linux之理解umask 轻松学习Linux之理解SUID&SGUID 本系列多媒体教程已完成 ...
- 第15.10节 PyQt(Python+Qt)入门学习:Qt Designer可视化设计界面组件与QWidget类相关的组件属性详解
PyQt学习有阵子了,对章节的骨架基本考虑好了,准备本节就写组件的属性的,结果一是日常工作繁忙,经常晚上还要加班,二是Qt的组件属性很多,只能逐一学习.研究和整理,花的时间有点长,不过终于将可视化设计 ...
- Android零基础入门第80节:Intent 属性详解(下)
上一期学习了Intent的前三个属性,本期接着学习其余四个属性,以及Android系统常用内置组件的启动. 四.Data和Type属性 Data属性通常用于向Action属性提供操作的数据.Data属 ...
- OutputCache属性详解(一)一Duration、VaryByParam
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
- OutputCache属性详解(三)— VaryByHeader,VaryByCustom
目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...
随机推荐
- Android Studio-ApplicationId 与 PackageName
BuildType 中所设置的『applicationIdSuffix』属性,按照这个属性的字面翻译为:『applicationId 的后缀』 Android 应用都有自己的包名.包名是设备上每个应用 ...
- WPF制作QQ列表(仿qq列表特效)
先看效果图:这个是折叠特效. 代码结构: model是我们的数据模型,定义了在列表显示的人物名称 图片 简介 . Resource是我们的图片资源 和 存储图片资源路径.名称 ...
- [转] React Native Navigator — Navigating Like A Pro in React Native
There is a lot you can do with the React Native Navigator. Here, I will try to go over a few example ...
- 实现当UILable的内容超出其范围后自动滚动效果
本文主要介绍 [当UILabel的内容超出其自身的宽度范围后,进行互动展示的效果],我们先来看一下Demo的效果图. 实际实现起来并不十分繁杂,在这里,为了开发的效率,我们使用了一个已经封装好的UIL ...
- Android EventBus
https://github.com/greenrobot/EventBus onEvent:如果使用onEvent作为订阅函数,那么该事件在哪个线程发布出来的,onEvent就会在这个线程中运行,也 ...
- spring MVC fromeWork 與webwork2 mvc 比較
http://www.blogjava.net/xxxzheng/articles/7614.html 在当今的MVC framework里,似乎Webwork2逐渐成为主流, Webwork2+Sp ...
- INI文件的读写
public class INIoperation { string inipath = Utils.GetMapPath("/Integration/Sync/set.ini") ...
- poj1182 食物链(种类并查集)详解
poj 1182 http://poj.org/problem?id=1182 分析:这个题大意说的非常清楚了,就是求出假话的个数,题目中给的假话要求有三个 ① 当前的话与前面的某些真的话冲突,是 ...
- 上传代码到cocoapod ,自己的框架提供给开发者使用
1.注册trunk 1 $sudo gem install cocoapods 1 pod trunk register 382782411@qq.com 'Henry519' --verbose ...
- sublimeText3中 less2css error: `lessc` is not available的解决办法
昨天在sublimeText3中安装了less 以及 less2css插件,但是在编译保存的时候总是出现错误: less2css error: `lessc` is not available 就go ...