文档章节

02。ios初学引导(第二天)

哥特复心
 哥特复心
发布于 2014/04/12 23:58
字数 708
阅读 136
收藏 0

一、控件的属性 1.CGRect frame 1> 表示控件的位置和尺寸(以父控件的左上角为坐标原点(0, 0)) 2> 修改这个属性,可以调整控件的位置和尺寸

2.CGPoint center 1> 表示控件的中点(以父控件的左上角为坐标原点) 2> 修改这个属性,可以调整控件的位置

3.CGRect bounds 1> 表示控件的位置和尺寸(以自己的左上角位坐标原点,位置永远是(0, 0)) 2> 修改这个属性,只能调整控件的尺寸

4.int tag 1> 表示控件的标识 2> 通过不同标识可以区分不同的控件

5.CGAffineTransform 5 1> 表示控件的形变状态(旋转角度、缩放比例) 2> 创建CGAffineTransform的函数

  • CGAffineTransformMakeScale(CGFloat sx, CGFloat sy) 创建一个x、y方向的缩放比例分别为sx、sy的形变值

  • CGAffineTransformMakeRotation(CGFloat angle) 创建一个旋转角度为angle的形变值

  • CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy) 在形变值t的基础上,再进行缩放,x、y方向的缩放比例分别为sx、sy,然后返回一个新的形变值

  • CGAffineTransformRotate(CGAffineTransform t, CGFloat angle) 在形变值t的基础上,再进行旋转,旋转角度为angle,然后返回一个新的形变值

二、添加控件到控制器的view [self.view addSubview:子控件];

三、设置按钮的属性 // 1.创建按钮 // 1.1.创建 UIButton *btn = [[UIButton alloc] init];

// 1.2.设置按钮的尺寸和位置 btn.frame = CGRectMake(0, 0, 100, 100);

// 1.3.设置按钮普通状态下的属性 // 1.3.1.设置背景图片 UIImage *normal = [UIImage imageNamed:@"btn_01.png"]; [btn setBackgroundImage:normal forState:UIControlStateNormal]; // 1.3.2.设置文字 [btn setTitle:@"点我啊" forState:UIControlStateNormal]; // 1.3.3.设置文字颜色 [btn setTitleColor:[UIColor greenColor] forState:UIControlStateNormal];

// 1.4.设置按钮高亮状态下的属性 // 1.4.1.设置背景图片 UIImage *high = [UIImage imageNamed:@"btn_02.png"]; [btn setBackgroundImage:high forState:UIControlStateHighlighted]; // 1.4.2.设置文字 [btn setTitle:@"摸我干啥" forState:UIControlStateHighlighted]; // 1.4.3.设置文字颜色 [btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];

// 1.5.监听按钮点击 [btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];

四、viewDidLoad 1.这是控制器的一个方法 2.当控制器的view创建完毕的时候会调用一次

五、UISlider 1.value属性可以获得当前的进度值 2.按钮的value发生改变了,会触发UIControlEventValueChanged事件

六、Plist文件的使用 1.加载一个plist文件的时候,会返回一个plist的根节点对象(Root)

七、NSBundle的使用 1.利用NSBundle可以访问某个资源包的内容

2.如果访问软件中最主要资源包的内容,应该用mainBundle NSBundle *bundle = [NSBundle mainBundle];

3.利用NSBundle获得文件的全路径 此处有的bundle是上面的NSBundle创建的 NSString *path = [bundle pathForResource:@"descs" ofType:@"plist"];

© 著作权归作者所有

共有 人打赏支持
哥特复心
粉丝 109
博文 68
码字总数 40593
作品 0
长沙
高级程序员
私信 提问
iOS 画面布局设计问题

请教各位iOS高手,我初学iOS软件开发 我想设计以下两张图这种布局,但不确定到底是用TableViewController 还是 Scroll View + View去调整每个Section 先谢谢各位...

HsuCI
2017/07/24
59
3
微软 Build 2016 第二日 给开发者的各种惊喜

  3 月 31 日,微软 Build 2016 开发者大会进入第二天的日程。昨天已经放出那么多干货之后,微软还有什么等着我们?第二天的主题演讲主要涉及企业级领域、云服务、Office 及开发工具等内容...

德国骨科院长
2016/04/01
5.5K
24
苹果又出事了,iOS 9 核心 iBoot 源码疑遭泄露

据 motherboard 报道,有用户在 GitHub 上共享了 iPhone 的核心组件源码,这可能会为黑客和安全研究人员找到 iOS 中的漏洞并使 iPhone 更容易越狱铺平道路。 泄露的代码标记为 “iBoot” ,它...

王练
02/08
3.9K
16
iphone开发资源汇总

iphone开发资源汇总 如何用Facebook graphic api上传视频: http://developers.facebook.com/blog/post/532/ Keychain保存数据封装: https://github.com/carlbrown/PDKeychainBindingsContr......

长平狐
2012/10/25
232
0
理解 iOS 和 macOS 的内存管理

在 iOS 和 macOS 应用的开发中,无论是使用 Objective-C 还是使用 swift 都是通过引用计数策略来进行内存管理的,但是在日常开发中80%(这里,我瞎说的,8020 原则嘛)以上的情况,我们不需要...

Mr_zebra
11/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

NEO 节点介绍

全节点(full nodes)是存储 NEO 区块链全部数据的节点,通过 P2P 的方式与区块链网络连接,在区块链网络中,所有的全节点都是平等的,既充当客户端又充当服务器。 NEO 有两个全节点程序: ...

NEO-FANS
8分钟前
0
0
内网穿透大杀器--EarthWorm

0x00 前言 如果感觉本文对你有帮助,请在文章末尾点个赞,谢谢表哥们支持! 当你在内网渗透,并且拿下一台机器的权限时,你是不是觉得已经算是一次完整的渗透了? 不来一次内网漫游,渗透是不...

刀剑如梦
14分钟前
2
0
PiggyMetrics分布式框架

https://github.com/sqshq/PiggyMetrics

丁建祥
15分钟前
0
0
零距离接触阿里云时序时空数据库TSDB

概述 最近,Amazon新推出了完全托管的时间序列数据库Timestream,可见,各大厂商对未来时间序列数据库的重视与日俱增。 阿里云TSDB是阿里巴巴集团数据库事业部研发的一款高性能分布式时序时空...

阿里云云栖社区
24分钟前
3
0
OkHttpClient封装

import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Map; import java.util.TreeMap; import java.util.Map.Entry; import o......

尘叙缘
25分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部