iOS开发笔记(一)

原创 2016年05月31日 22:40:09

   这是本人在开发中简单整理的iOS笔记,有点凌乱吧  哈哈。不过内容简单易懂  希望你能喜欢。微笑微笑

1、内存

内存溢出:内存不够用,数据溢出

内存泄漏:该释放的对象没有释放


2、性能检测方法

静态分析:product—>Analyze

动态分析:product—>profile



3、多线程安全解决方法和线程控制

 >只在主线程刷新UI界面

 >防止资源抢夺 使用synchronize加锁

 >异步操作 尽量使用GCD


4、iOS应用数据存储的常用方式

 >属性列表归档(plist)

 >偏好设置(NSUserDefault)

 >NSKeyedArchiver或NSKeyedUnArchiver<NSCoding>

 >SQlite3(第三方FMDB)

 >CoreData



5、默认情况 模拟器的目录是隐藏的,要想显示出来,需要在mac终端输入下面指令:

   显示mac隐藏文件的指令:defaults write com.apple.finder AppleShowAllFiles YES

  隐藏mac隐藏文件的指令: defaults write com.apple.finder AppleShowAllFiles NO

  最后还要强制退出 重新启动finder



6、定时器

NSTimer:一般用于定时更新非界面的数据 如歌词进度 歌曲播放进度等

CADisplayLink:适用刷一帧界面,默认每秒60次


>NSTime用法

self.timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector() userInfo:nil repeats:YES];

    [[NSRunLoop mainRunLoop] addTimer:self.currentTimeTimer forMode:NSRunLoopCommonModes];

CADisplayLink用法

self.timer = [CADisplayLink displayLinkWithTarget:self selector:@selector()];

 [self.timer addToRunLoop:[NSRunLoop mainRunLoop] forMode:NSRunLoopCommonModes];



7、设置View.layer阴影的要素

 > 设置颜色shallowColor

 > 设置偏移位shallowOffset

 > 设置透明度shallowOpaCity 

 

8、判断设备系统的版本号

[[UIDevice currentDevice].systemVersion doubleValue]



9、如果想要删除UITableViewCell里的cell的删除,手指在cell上面测滑实现删除

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath;


10、iOS中的事件可分三大类型

> 触摸事件

> 加速计事件

> 远程控制事件

另外事件的产生和传递:触摸事件的传递是从父控件传递到子控件,如果父控件不能接收触摸事件,那么子控件就不可能接收到触摸事件

事件传递是从父控件传递到子控件:UIApplication—>UIWindow—>合适的子控件



11、图片下载方式imageWithcontentsOfFile:和imageNamed:的区别

> imageWithcontentsOfFile:这个方法加载的图片不会有缓存,适用适合用来加载大图片、一次性的图片(使用频率较低)

> imageNamed:这个方法加载的图片有缓存、适合用来加载小图片、使用频率比较高的图片

另外小图片建议应该放在Images.xcassets中;大图片建议放在Supporting Files中  


12、给navigation bar设置title颜色

    UIColor *orange = [UIColor orangeColor];

    NSDictionary *dict = [NSDictionary dictionaryWithObject:orange forKey:NSForegroundColorAttributeName];

    [self.navigationController.navigationBar setTitleTextAttributes:dict];

13、KVC修改textField的placehold的字体颜色、大小

    self.textField.placeholder = @"i am moti";

    [self.textField setValue:[UIColor orangeColor] forKeyPath:@"_placeholderLabel.textColor"];

    [self.textField setValue:[UIFont boldSystemFontOfSize:17] forKeyPath:@"_placeholderLabel.font”];


14、收键盘(结束编辑界面)

>[self.view endEditing:YES]

>[[[UIApplication sharedApplication] keyWindow] endEditing:YES];


15、第三方框架FMDB报错  "_sqlite3_bind_blob", referenced from:

      -[FMDatabase bindObject:toColumn:inStatement:] in FMDatabase.o

必须导入sqlite3.dylib到framwork中


16、修改statusbar文字颜色

在iOS7以上状态栏的字体颜色默认是黑的 如果想要改变其字体颜色 必须现在项目的info.plist添加并设置View controller-based status bar appearance ,然后可以在appDelegate中添加代码:[application setStatusBarStyle:UIStatusBarStyleLightContent];  状态栏的样式有两个是过期的

    UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0,7_0,"Use UIStatusBarStyleLightContent") =1,


    UIStatusBarStyleBlackOpaque      NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,

17、iOS运行时想要隐藏status bar

要隐藏status bar必须在info.plist中添加Status bar is initially hidden 并设置为YES属性

如果有什么可以值得探讨的 欢迎一起交流:

如果有什么好的建议,请联系虾米,虾米感激不尽 蟹蟹 哈!!微笑微笑

虾米联系方式:

QQ:584837022

github:https://github.com/ios-cjh


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

iOS开发笔记 - 工具篇

工欲善其事,必先利其器。作为一个合格的iOS开发者,熟练的使用各种开发或辅助开发的工具也算是一项必备技能吧,下面是我整理的一些工具及其应用场景和使用方法。...

ios开发学习笔记(这里一定有你想要的东西,全部免费

1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用)。 其实在代码里还是可以设置的,那就是删除背景view [...
  • mad1989
  • mad1989
  • 2012年09月12日 21:01
  • 109443

IOS开发笔记

1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用) 其实在代码里还是可以设置的,那就是删除背景view...

IOS开发指南读书笔记5(IOS 常用设计模式)

IOS开发指南读书笔记5(IOS 常用设计模式) 1、单例模式 构造方法 @interface Singleton : NSObject +(Singleton*)shar...

ios开发笔记

  • 2015年08月17日 17:16
  • 5.96MB
  • 下载

iOS开发笔记(适用小白)

  • 2014年06月15日 13:05
  • 794KB
  • 下载

iOS开发笔记--UILabel的相关属性设置

在iOS编程中UILabel是一个常用的控件,下面分享一下UILabel的相关属性设置的方法。 很多学习iOS6编程都是从storyboard开始,用到UILabel时是将控件拖到storybo...

ios开发笔记

  • 2012年03月31日 16:24
  • 569KB
  • 下载

IOS开发-Swift-基础知识学习笔记

  • 2017年04月25日 11:34
  • 33KB
  • 下载

iOS开发笔记--多个Section的TableView

开发多个Section的tableView。 首先应该考虑到数据源该如何得到 我们这里可以通过两种方式:第一种是读取plist文件。第二种是通过代码进行数据存储以及读取。 多个Sec...
  • errvv
  • errvv
  • 2016年01月25日 09:52
  • 139
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS开发笔记(一)
举报原因:
原因补充:

(最多只允许输入30个字)