IOS学习记录
文章平均质量分 64
红秋裤
做自己喜欢的事
展开
-
字典转模型
使用字典的坏处 一般情况下,设置数据和取出数据都使用“字符串类型的key”,编写这些key时,编译器不会有任何友善提示,需要手敲dict[@"name"]=@"jack";NSString *name=dict[@"name"]; 手敲字符串key,key容写易错,key如果写错了,编译器不会有任何警告和报错,容易造成设错数据或者取错数据。使用模型的好处 所谓原创 2015-06-23 16:01:38 · 183 阅读 · 0 评论 -
控制器的view的创建
-(void)loadView 方法用来创建自定义View只要用到View并且View为空的时候就会调用loadView原创 2015-11-27 21:57:49 · 202 阅读 · 0 评论 -
多控制器UINavigationController
UINavigationController的使用步骤:1 初始化UINavigationController2 设置UIWindow的rootViewController为UINavigationController3 根据具体情况,通过push方法添加对应个数的子控制器UINavigationController以栈的形式保存子控制器@property(nona原创 2015-11-30 17:17:02 · 190 阅读 · 0 评论 -
Xcode安装VVDocumenter文档注释插件
VVDocumenter 在Xcode上的便捷安装原创 2015-12-02 21:58:35 · 268 阅读 · 0 评论 -
NSUserDefaults简单的数据存储
NSUserDefaults简介 NSUserDefaults是一个单例,在整个程序中只有一个实例对象,他可以用于数据的永久保存,而且简单实用,NSUserDefaults适合存储轻量级的本地数据,一些简单的数据(NSString类型的)例如密码,网址等,NSUserDefaults肯定是首选 NSUserDefaults可以存储下列类型的数据:NSNumber(NSInteger原创 2015-12-20 20:46:35 · 404 阅读 · 0 评论 -
CPU 资源消耗原因和解决方案
1>对象创建 对象的创建会分配内存、调整属性、甚至还有读取文件等操作,比较消耗 CPU 资源。尽量用轻量的对象代替重量的对象,可以对性能有所优化。比如 CALayer 比 UIView 要轻量许多,那么不需要响应触摸事件的控件,用 CALayer 显示会更加合适。如果对象不涉及 UI 操作,则尽量放到后台线程去创建,但可惜的是包含有 CALayer 的控件,都只能在主线程创建和原创 2016-01-22 15:52:39 · 1820 阅读 · 0 评论 -
UIImagePickerController
转载自 http://blog.csdn.net/kingsley_cxz/article/details/91570931.UIImagePickerController的静态方法: imagepicker = [[UIImagePickerController alloc]init]; //UIImagePickerController静态转载 2016-01-22 17:07:40 · 197 阅读 · 0 评论 -
userInteractionEnabled
userInteractionEnabled userInteractionEnabled是UIView的一个属性,如属性本身的名称所释,该属性决定UIView是否接受并响应用户的交互 当值设置为NO后,UIView会忽略那些原本应该发生在其自身的诸如touch和keyboard等用户事件,并将这些事件从消息队列中移除出去。当值设置为YES后,这些用户事件会正常的派发至UIVi原创 2015-12-25 22:17:42 · 628 阅读 · 0 评论 -
IOS多线程操作之一次性代码
GCD中有个函数能够保证某段代码在程序运行过程中只被执行1次!该函数如下:staticdispatch_once_t onceToken; dispatch_once(&onceToken, ^{ })dispatch_once_t在头文件中得定义如下:typedef long dispatch_once_t;原创 2016-01-12 15:50:58 · 1059 阅读 · 0 评论 -
VFL-自动布局
VFL全称是Visual Format Language,翻译成中文是“可视化格式语言”,VFL是苹果公司为了简化Autolayout的编码而推出的抽象语言VFL的使用:+ (NSArray *)constraintsWithVisualFormat:(NSString *)format options:(NSLayoutFormatOptions)opts metrics:(NSDi原创 2016-03-30 11:30:48 · 1063 阅读 · 0 评论 -
App启动时广告的实现
1> 添加一个控制器,让窗口刚开始展示出来的是一个控制器 1.1 广告界面是固定的,所以可以用Xib描述(为Xib添加imageView,添加按钮) 注:imageview默认是不可以和用户交互的,所以要设置其userInteractionEnabled属性 self.advertisementView.userInteract原创 2016-03-08 17:19:47 · 1534 阅读 · 0 评论 -
如何判断用户输入的是否为合理手机号
首先需要输入数字时限制其弹出的键盘必定为数字键盘TextField.keyboardType = UIKeyboardTypePhonePad其次判断输入的长度,如果用户输入的长度大于11位时只截取前11位if (TextField.text.length >=11) { TextField.text = [TextFiel原创 2016-03-26 13:42:56 · 2071 阅读 · 0 评论 -
Cocoa pods的安装和使用
原理CocoaPods的原理,它是将所有的依赖库都放到另一个名为Pods项目中,然后 让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中1、Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a 文件即可。 2、对于资源文件,CocoaPods提供了一个名为Pods-resources.sh的bash脚本, 该脚本在每次项目编原创 2016-05-06 15:47:21 · 636 阅读 · 0 评论 -
ios8新特性 push kit
转自:http://blog.csdn.net/openglnewbee/article/details/44807191Question:pushkit是什么?Answer:ios8苹果新引入了名为pushkit的框架和一种新的push通知类型,被称作voip push.该push方式旨在提供区别于普通apns push的能力,通过这种push方式可以使app执行制定转载 2016-04-24 10:58:36 · 645 阅读 · 0 评论 -
GCD创建单例
单例是一种类,该类只能在第一次用的时候实例化一个对象,后期直接调用此对象(有点共享的意思)。在Foundation框架中比如NSFileManger和NSNotificationCenter,分别通过它们的类方法defaultManager和defaultCenter获取。尽管不是严格意义的单例,这些类方法返回一个可以在应用的所有代码中访问到的类的共享实例。使用Objective-C实现单例模原创 2016-05-21 10:45:31 · 330 阅读 · 0 评论 -
UIApplication
UIApplication对象是应用程序的象征每一个应用都有自己的UIApplication对象,而且是单例的通过[UIApplicationsharedApplication]可以获得这个单例对象一个iOS程序启动后创建的第一个对象就是UIApplication对象利用UIApplication对象,能进行一些应用级别的操作设置应用程序图标右上角的红色提醒数字原创 2015-11-19 23:21:48 · 222 阅读 · 0 评论 -
项目中常见的文件
建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除在旧版本Xcode创建的工程中,这个配置文件的名字就叫“Info.plist”项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是传说中非常重要的“Info.plist”项目中还有一个InfoPlis原创 2015-11-19 19:36:40 · 327 阅读 · 0 评论 -
UIWindow
UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindowiOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow也就说,没有UIWindow,就看不见任何UI界面原创 2015-11-23 23:18:31 · 213 阅读 · 0 评论 -
动画效果代码段
动画效果 1动画开始 [UIView beginAnimations:nil context:nil]; 2动画持续时间 [UIView setAnimationDuration:2.0]; 代码段 3动画提交 [UIView commitAnimations];原创 2015-06-04 12:15:18 · 258 阅读 · 0 评论 -
frame\center\bounds的区别
frame: 能修改位置和尺寸 center:能修改位置 bounds:能修改尺寸(x\y一般都是0)原创 2015-06-04 12:12:37 · 224 阅读 · 0 评论 -
序列帧动画
1 png图片建议放在Images.xcassets文件中2 jpg图片放在Images.xcassets文件中不支持,拖到Supporting Files文件中3 加载图片//1.加载多有动画图片 if(self.imageView.isAnimation) retrun; NSMutableArray *images=[NSMutableArray arra原创 2015-06-06 11:23:29 · 523 阅读 · 0 评论 -
plist
1 创建plist文件时不要后缀名.info 原因为:Supporting Files中有个info.plist文件,只要plist中带一个info,Xcode就会误认为跟Supporting Files中info.plist文件性质差不多,把自己创建的plist当做是系统自带的文件,从而导致无法加载2 创建plist目的是简单的动态存储数据3 plist文件中添加数据,左边的三脚原创 2015-06-04 00:11:33 · 190 阅读 · 0 评论 -
IOS文档注释
写在属性前面好处:写在方法前面原创 2015-06-06 13:30:54 · 227 阅读 · 0 评论 -
UIWindow
UIWindow原创 2015-07-17 16:39:21 · 242 阅读 · 0 评论 -
控制器
如何创建一个控制器1 通过storyboard创建加载storyboardUIStoryboard *storyboard =[UIStoryboard storyboardWithName:@"name" bundle:nil];创建storyboard 里面的控制器UIViewController *vc=[storyboard instantiateInitialView原创 2015-07-23 22:01:18 · 284 阅读 · 0 评论 -
UIPickerView
1.UIPickerView的常见属性// 数据源(用来告诉UIPickerView有多少列多少行)@property(nonatomic,assign)id dataSource;// 代理(用来告诉UIPickerView每1列的每1行显示什么内容,监听UIPickerView的选择)@property(nonatomic,assign)id del原创 2015-11-05 18:54:51 · 179 阅读 · 0 评论 -
自定义cell(通过代码,cell得高度不一致)
如果控制器继承UITableViewController, self.view=self.tableviewtableview的数据源和代理默认就是该控制器了开发步骤:1 新建一个继承自UITableViewCell类2 先在 -(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifi原创 2015-10-12 11:33:18 · 288 阅读 · 0 评论 -
有价值的参考网页和博客
http://www.oschina.net/news/42288/10-objective-c-interviewhttp://code4app.com/article/cocoapods-install-usagehttps://ruby.taobao.orghttp://www.ityran.com/tutorials http原创 2015-10-13 17:41:44 · 348 阅读 · 0 评论 -
UIView简介
http://blog.csdn.net/likendsl/article/details/7629517view的生命周期原创 2015-10-13 16:56:24 · 174 阅读 · 0 评论 -
隐藏键盘
1、点击键盘上的return键隐藏键盘[textFiled resignFirstResponder] 这个则是比较常用的让某个textFiled的键盘隐藏。// 点击键盘的return收回键盘(UITextFieldDelegate的代理方法)- (BOOL)textFieldShouldReturn:(UITextField *)textField{ [textFie原创 2015-10-13 16:38:55 · 235 阅读 · 0 评论 -
基本交互
1 MVC 介绍 Model 保存应用程序数据的类(模型) View 包括窗口、空间和其他一些用户可以看到的能与之交互的元素(界面) Controller 把模型和视图绑在一起的代码(控制器)2 创建项目 1) 视图控制器类 UIViewController 2) 输出口 (outlet)原创 2015-10-13 17:05:52 · 191 阅读 · 0 评论 -
用户界面
1 视图属性 检查器顶部显示的是这个类的属性,之后则是它继承自类的属性 1) Mode 内容在视图内部的显示方式 Scale To Fill 2) Tag 标记 3) Interaction User Interaction Enabled 是否能够响应原创 2015-10-13 17:07:42 · 231 阅读 · 0 评论 -
AppDelegate中几个常用的回调调用时机
本篇文章主要介绍一些UIApplicationDelegate中几个常用的回调方法的调用时机以帮助你判断哪些方法倒底放到哪个回调中去实现。1. – (void)applicationDidFinishLaunching:(UIApplication *)application;此方法基本已经弃用,改用第2个方法代替。2. – (BOOL)applicat原创 2016-05-22 10:22:52 · 281 阅读 · 0 评论