UI第一节—— UILable
1.首先说说怎么创建UI程序,打开xcode,选择Create a new Xcode project.看如下截图
2,接下来就蹦出一个和写OC应用差不多的界面,不多解释了
3.我给工程取得名字就叫UILable,接下来我们就来认识一下这个UILable,接下来我们就看到了一个AppDelegate.m函数,我们选择- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}这个就OK,下面的几个函数是进入手机后台或者从后台进来的函数,我们暂时不管,开始看代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //已进入是进入一个window,这个是设置window的大小
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; // 创建一个UILabel,并设置其大小,UILabel是UIView的一个字类
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 60, 300, 30)]; // 设置Label的文字
label.text = @"I am a Label"; // 设置背景颜色
label.backgroundColor = [UIColor lightGrayColor]; // 设置字体大小,返回的是系统默认字体
label.font = [UIFont systemFontOfSize:30]; // 获取当前系统的字体
NSArray *fontNames = [UIFont familyNames];
for (NSString *name in fontNames) {
NSLog(@"%@", name);
} // 通过字体名字来设置字体
label.font = [UIFont fontWithName:@"Copperplate" size:30]; // 自动调整字体大小来适应Label的宽度
label.adjustsFontSizeToFitWidth = YES; // 设置文字的颜色
label.textColor = [UIColor whiteColor]; // 设置文字的对齐方式
// NSTextAlignmentCenter // 居中
// NSTextAlignmentRight // 右对齐
// NSTextAlignmentLeft // 左对齐
label.textAlignment = NSTextAlignmentCenter; // 阴影
label.shadowOffset = CGSizeMake(5, 5);
label.shadowColor = [UIColor blueColor]; // 多行 0就是任意行
label.numberOfLines = 0; // 切断的模式
// NSLineBreakByWordWrapping 以一个单词为单位的
// NSLineBreakByCharWrapping 以字符为单位
label.lineBreakMode = NSLineBreakByCharWrapping; //设置是否能与用户进行交互
label.userInteractionEnabled = YES; //设置label中的文字是否可变,默认值是YES
label.enabled = NO; //设置label的行数
label.numberOfLines = 2; //设置字体大小适应label宽度
label.adjustsFontSizeToFitWidth = YES; //设置高亮
label.highlighted = YES;
label.highlightedTextColor = [UIColor orangeColor]; //如果adjustsFontSizeToFitWidth属性设置为YES,这个属性就来控制文本基线的行为
label.baselineAdjustment = UIBaselineAdjustmentNone;
// typedef enum {
// UIBaselineAdjustmentAlignBaselines,
// UIBaselineAdjustmentAlignCenters,
// UIBaselineAdjustmentNone,
// } UIBaselineAdjustment; //设置label的旋转角度
label.transform = CGAffineTransformMakeRotation(0.1); lable.baselineAdjustment= UIBaselineAdjustmentAlignBaselines;
typedef NS_ENUM(NSInteger, UIBaselineAdjustment) {
UIBaselineAdjustmentAlignBaselines = 0, 默认值文本最上端于label中线对齐
UIBaselineAdjustmentAlignCenters, 文本中线于label中线对齐
UIBaselineAdjustmentNone, 文本最低端与label中线对齐 Label.minimumScaleFactor = 10.0;//默认值为0,为当前字体大小
}; // 把Label添加到Window上
[self.window addSubview:label];
//设置window的背景颜色
self.window.backgroundColor = [UIColor whiteColor]; //这个是便捷方法,去使被使用对象的主窗口显示到屏幕的最前端。你也可以使用hiddenUIView方法隐藏这个窗口”.所以基本上来说,对于编程者的区别仅仅在于在其前添加代码,或在其后添加代码。
[self.window makeKeyAndVisible]; return YES;
}
好了,UILabel 就说到这里了,要多多练习,把这些方法记住哦
如果对你有帮助,请关注我哦!
UI第一节—— UILable的更多相关文章
- Ionic 入门与实战之第二章第一节:Ionic 环境搭建之开发环境配置
原文发表于我的技术博客 本文是「Ionic 入门与实战」系列连载的第二章第一节,主要对 Ionic 的开发环境配置做了简要的介绍,本文介绍的开发环境为 Mac 系统,Windows 系统基本类似,少许 ...
- OpenNebula学习第一节OpenNebula Front-end Installation
一.说说情怀 随着公司硬件开发资源的不足,构建一个云平台似乎重要了起来.当然,也不是这个平台搭建的主力,出于工作的需求和个人兴趣爱好,接下来就来学习一下OpenNebula相关的东西,这是第一节课,先 ...
- delphi 线程教学第一节:初识多线程
第一节:初识多线程 1.为什么要学习多线程编程? 多线程(多个线程同时运行)编程,亦可称之为异步编程. 有了多线程,主界面才不会因为耗时代码而造成“假死“状态. 有了多线程,才能使多个任务同时 ...
- 第一节 初识RabbitMQ
原文:第一节 初识RabbitMQ 版权声明:未经本人同意,不得转载该文章,谢谢 https://blog.csdn.net/phocus1/article/details/87280120 1.什么 ...
- android内部培训视频_第一节
声明:本视频为公司内部做android培训时录制的,无任何商业目的.同时鉴于水平有限,可能不符合您的需求,放在这里的目的是提供给公司同事下载,作为培训的一个记录,也作为一个系列教程的自我督促完成的理由 ...
- 我的第一节Android课
我的第一节安卓课程,今天非比寻常的一天,我开始了我程序猿之路的第一节安卓课程,安卓课程只是我的一个兴趣班,我的本专业是java开发,因为喜欢做一个属于自己的一个手机APP,就选多个一样技能,毕竟十八般 ...
- 第四章 跨平台图像显示库——SDL 第一节 与SDL第一次亲密接触
http://blog.csdn.net/visioncat/article/details/1596576 GCC for Win32 开发环境介绍(5) 第四章 跨平台图像显示库——SDL 第一节 ...
- Centos7 Openstack - (第一节)基本环境配置
Centos7 install Openstack - (第一节)基本环境配置 我的blog地址:http://www.cnblogs.com/caoguo 根据openstack官方文档配置 官方文 ...
- seajs第一节,seajs基本使用
什么是seajs,它是干什么使用的,可以去网上搜索一下, 官网:http://seajs.org/docs/ 基本使用seajs <!DOCTYPE html> <html> ...
随机推荐
- HDU 1007 Quoit Design
传送门 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Des ...
- 配置ASP.NET Web应用程序, 使之运行在medium trust
这文章会向你展示, 怎么配置ASP.NET Web应用程序, 使之运行在medium trust. 如果你的服务器有多个应用程序, 你可以使用code access security和medium ...
- PHP实现观察者模式
<?php //php设计模式观察者模式 /** 被观察者 */ class user implements SplSubject{ public $lognum; public $hobby; ...
- Eclipse导入项目:No projects are found to import
1 http://www.ztyhome.com/android-import-error/(网址不稳定详细内容如下:) 2如果发现导入工程(impot)的时候,出现”No projects are ...
- 基本药目录sop
http://db.yaozh.com/basicdir 基本药物 编辑 "基本药物"的概念, 由世界卫生组织于1977年提出,指的是能够满足基本医疗卫生需求,剂型适宜.保证供应. ...
- 第一章 基础设施,1.3 阿里视频云ApsaraVideo是怎样让4000万人同时狂欢的(作者:蔡华)
1.3 阿里视频云ApsaraVideo是怎样让4000万人同时狂欢的 前言 在今年的双11中,双11天猫狂欢夜的直播成为一大亮点. 根据官方披露数据,直播总观看人数超4257万,同时观看人数峰值达5 ...
- Android学习笔记——button_activity
工程的功能是实现在一个acticity上点击按钮,切换到另外一个activity 以下代码为MainActivity.java中的代码 package com.example.button_activ ...
- URL组分
url通常包含多个组成部分,在js中可通过location对象获取其中各项信息 访问http://mp.weixin.qq.com/s?__biz=MjM5NjA0NjgyMA==&mid=2 ...
- 《CSS3实战》读书笔记 第4章:样式继承
节省你的时间--样式继承 ### 什么是继承? 后代元素可以继承先代元素的一些属性.有了它,可以省去分别定义样式的时间.继承了方向是由外而内的. ### 继承的局限性 应该注意到,有些属性是不适宜继承 ...
- TortoiseSVN的相关问题
图标覆盖问题: 创建一个保存文档的目录,创建一个工作目录,工作目录创建后,没有显示覆盖图标.解决办法如下: 找到设置,在工作目录下右键 打开界面如下: 从包含路径中设置就可以. 目录检出后把它从检出状 ...