iOS学习笔记总结整理
LG_刚刚好
刚刚好的一亩三分地
展开
-
一.内存管理情况
1- autorelease,当用户的代码在持续运行时,自动释放池是不会被销毁的,这段时间内用户可以安全地使用自动释放的对象。当用户的代码运行告一段落,开始等待用户的操作,自动释放池就会被释放掉(调用dealloc),池中的对象都会收到一个release,有可能会因此被销毁。2-成员属性: readonly:不指定readonly,默认合成getter和setter方法。外界毫不关心原创 2016-06-27 19:30:35 · 442 阅读 · 0 评论 -
iOS学习资料总结
1.如何学习新技术1.了解有什么新技术1> 苹果API文档 - General - Guides - iOSx API Diffs2> 观看WWDC会议视频参看 window--- Documentation and API Reference展开左侧 iOS8 library 主要关注 左边 General 与 Languages & Util原创 2016-07-05 09:37:34 · 873 阅读 · 0 评论 -
十五.设置UIScrollView滚动速度
1. // 自动滚动太快,效果不好,这里把动画设置慢点,注意下面要直接赋值contentOffset,不要用带animated参数的函数,否则动画会出问题,因为两处都是动画效果。 2. [UIScrollView animateWithDuration:1.0f 3. delay:0 4.原创 2016-06-27 19:57:04 · 4673 阅读 · 0 评论 -
十四.给UIView子类设置阴影,包括各种控件
1 导入QuartzCore framework 2 #import 3 编码:1. [imgView layer] setShadowOffset:CGSizeMake(5, 5)]; // 阴影的范围 2. [imgView layer] setShadowRadius:2]; // 阴影扩散的范围控制 3. [imgView layer] setShad原创 2016-06-27 19:56:01 · 427 阅读 · 0 评论 -
十三.加速度传感器
获得加速度传感器读数:1. UIAccelerometer *accelerometer = [UIAccelerometer shareAccelerometer]; // 单例 2. accelerometer.delegate = self; 3. accelerometer.updateInterval = 1.0f / 10.0f; // 传感器更新频率,普通游戏10~30H原创 2016-06-27 19:53:53 · 669 阅读 · 0 评论 -
十二.定时器
由于运行环机制,定时器的精度不高,只能用于一般性延时。 例子:拼图游戏,DeskViewController.m。 NSObject类的定时方法。 performSelector: withObject: afterDelay: 运行方法,参数,时间(秒)。 performSelectorOnMainThread: withObject: waitUntil原创 2016-06-27 19:52:02 · 465 阅读 · 0 评论 -
十一.运行环-runloop
运行环作用于一个iOS应用的整个生命周期。它负责监视各种输入事件,并且在合适的时候对这些输入进行分配。应用的每一个线程都有且仅有一个运行环。你自己不需要创建也不需要销毁运行环,但是可以通过currentRunLoop方法来获取当前的运行环。原创 2016-06-27 19:50:50 · 560 阅读 · 0 评论 -
十.媒体播放
1- 音频 [1] 音乐往往是存储在iPod曲库(注意位置)中的,可以通过媒体选择器(media picker)或者媒体查询(media query)读取,然后用音乐播放器MPMusicPlayerController播放。1. MPMusicPlayerController *musicPlayer = [MPMusicPlayerController applicationM原创 2016-06-27 19:49:00 · 562 阅读 · 0 评论 -
九.忙碌指示器
UIActivityIndicator。 UIActivityIndicatorView *activityIndicatior = [UIActivityIndicatorView alloc] initWithActivityIndicatorStyle: UIActivityIndicatorViewStyleWhiteLarge]; activityIndicator原创 2016-06-27 19:47:11 · 408 阅读 · 0 评论 -
八.并发编程
1-GCD-Grand Central Dispatch,GCD使用队列来管理多个任务,而每个任务是以块(其定义类似于函数)来描述的。GCD从队列中读取这些要完成的任务,然后其多核执行引擎负责将这些任务分配给它所管理的线程。和手动线程管理相比,GCD能极大地优化线程管理,并极大地减少创建和销毁线程所带来的额外开销。除了在多核系统上得性能改进之外,GCD还能帮助提高应用的响应速度,并让代码更为干净,原创 2016-06-27 19:46:03 · 480 阅读 · 0 评论 -
七.区分设备类型的方法
打电话功能只有iPhone支持,对于其他设备对应按钮应该禁用。1. 用[UIDevice currentDevice].model,这个返回的是一个NSString,你可以做如下判断就能知道设备是iPad还是iPhone. if ([UIDevice currentDevice].model rangeOfString:@"iPad"].location != NSNotFound) {原创 2016-06-27 19:44:50 · 619 阅读 · 0 评论 -
六.快速拨打电话接口
openURL能帮助你运行Maps,SMS,Browser,Phone甚至其他的应用程序。这是Iphone开发中我经常需要用到的一段代码,它仅仅只有一行而已。1. [UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8004664411"]; 这个程序通过基础的协议支持拨打电话的功能。摘自:htt原创 2016-06-27 19:43:32 · 3860 阅读 · 0 评论 -
四.文件系统
1- 概述 bundle(沙盒):一个应用只能在自己的沙盒中读取或存储文件,而不能操作其他沙盒中的文件。好处:保护应用的隐私不受侵犯,保护系统文件的安排,应用删除后相关文件也能被全部清除。 每个应用都有自己的沙盒,沙盒的根目录的获取方法是NSHomeDirectory()。 根目录下的内容: -.app文件,实际上是一个文件夹,包含了可执行文件、原创 2016-06-27 19:39:18 · 501 阅读 · 0 评论 -
三.容器
-NSArray和NSMutableArray +array:创建一个空数组 +arrayWithArray:从另一个数组创建新的数组 +arrayWithContentsOfFile:读文件创建数组 +arrayWithObject:创建一个数组,其中包含一个给定对象 +arrayWithObjects原创 2016-06-27 19:37:56 · 422 阅读 · 0 评论 -
五.旋转
1-interfaceOrientation属性查询当前的界面方向。 2- rotatingHeaderView方法来查询当前导航视图。 3- rotatingFooterView来查询当前的标签条。原创 2016-06-27 19:41:14 · 373 阅读 · 0 评论 -
二 .图形API
1)readwrite:是可读可写特性;同时生成get方法和set方法的声明和实现2)readonly:是只读特性;只生成get方法的声明和实现3)assign:是赋值特性;set方法的实现是直接赋值,用于基本数据类型4)retain:表示持有特性;set方法的实现是release旧值,retain新值,用于OC对象类型5)copy:表示赋值特性;set方法的实现是release旧原创 2016-06-27 19:32:56 · 788 阅读 · 0 评论 -
UIAlertController
苹果希望通过一个storyboard搞定适配所有屏幕的显示 将所有屏幕尺寸都抽象成正方形 打开 ViewController.m加入方法- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { // 危险操作:弹框提醒 // 1.UIAlertView // 2原创 2016-07-05 10:09:17 · 546 阅读 · 0 评论