- 博客(28)
- 资源 (8)
- 收藏
- 关注
转载 iOS 保持界面流畅的技巧
来源:http://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/这篇文章会非常详细的分析 iOS 界面构建中的各种性能问题以及对应的解决思路,同时给出一个开源的微博列表实现,通过实际的代码展示如何构建流畅的交互。Index演示项目屏幕显示图像的原理卡顿产生的原因和解决方案CPU 资
2015-11-22 21:06:49 995
转载 一个简单的创建圆角图像的UIImage扩展实现
在iOS开发中经常需要用到圆角图像。简单搜索一下就能找到很多创建圆角图像的实现代码。我在Stack Overflow上找到了一段代码,略微修改了一下,写了个简单的Category方法,可以用来创建圆角图像。代码如下:12345678910111213141516171819202122232425262728
2015-11-20 23:16:19 367
转载 iOS应用性能调优的25个建议和技巧
2013/04/11 | 分类: 程序员 | 6 条评论 | 来源: 伯乐在线 | 标签: IOS, 性能分享到:51写在前面本文来自iOS Tutorial Team 的 Marcelo Fabri,他是Movile的一名 iOS 程序员。这是他的个人网站:http://www.marcelofabri.com/,你还可以在Twitter上关注@mar
2015-11-20 17:28:15 562
转载 绘制阴影 优化 + UIImage 性能优化
在 iOS 开发中,通过设置 layer 的 shadowColor、shadowOpacity、shadowOffset、shadowRadius 几个属性可以很方便的为 UIView 添加阴影效果。但是前段时间碰到一个问题,在添加了阴影后,会出现动画卡顿的现象。在一番 Google 以后找到了解决方案,需要为阴影指定路径,即设置 layer 的 shadowPath 属性。例如:
2015-11-20 16:39:19 555
转载 iOS 中文转拼音
之前做通讯录相关的一些App时,有一个比较常用的算法是将汉字转换成拼音。当时采用的做法是:将各个拼音段的首个汉字(按Unicode排序)做成两个数组,一个数组存拼音,另一个数组存拼音对应首个汉字的Unicode。如果要获取某个汉字的拼音,可以折半查找法找的对应拼音。最近无意间发现CFStringTransform这篇文章后,发现系统本身已经提供了一个这样的函数。CFStringTran
2015-11-20 15:06:25 482
原创 UImageView翻转效果
感觉这个效果简单,但是还不错,主要还是用了在动画执行到一半的时候马上切换图片.就会达到这样的效果了.当然之前必须设置UIImageView可以点击userInteractionEnabled为YES关键代码如下:- (void)viewDidLoad{ [superviewDidLoad]; self.imageView.userInteractionE
2015-11-19 17:50:00 812
转载 Xcode 中 NSAssert() 的用法
关于 Xcode 中 NSAssert() 的用法 ,以及 assert() 与 NDEBUG assert(e) 是 C 语言里面的 宏 , 这个 宏的 定义 是 限制在 NDEBUG 条件 下的 ;在没有定义 NDEBUG 宏的时候 会替换成 一行 三位运算符表达式 e? 0 : printf ( 文件,行号,方法名); abort();如果定义了 NDEBUG宏
2015-11-19 17:16:25 618
转载 IOSnil/Nil/NULL的区别
1,nil:指向oc中对象的空指针Nil:指向oc中类的空指针NULL:指向其他类型的空指针,如一个c类型的内存指针NSNull:在集合对象中,表示空值的对象若obj为nil:[obj message]将返回NO,而不是NSException若obj为NSNull:[obj message]将抛出异常NSExceptionNSNu
2015-11-19 10:01:21 331
转载 EdgeInsets Button
UIButton内有两个控件titleLabel和imageView,可以用来显示一个文本和图片,这里的图片区别于背景图片。给UIButton设置了title和image后,它们会图片在左边,文本在图片右边显示。它们两个做为一个整体依赖于button的contentHorizontalAlignment居左居右或居中显示。 1.当button.width
2015-11-18 17:07:57 248
转载 调整导航条上leftBarButtonItem和rightBarButtonItem与屏幕边界
我们发现,在设置navigationItem的leftBarButtonItem或rightBarButtonItem时,用CustomView初始化UIBarButtonItem,不论怎么设置CustomView的frame,添加到导航条上之后总是和屏幕边界有一定的间距(5pix),如何自由调整这个间距呢? 方法一: 考虑到CustomView一般
2015-11-18 16:48:53 1403
转载 UITableView - beginUpdates和endUpdates
1. beginUpdates方法和endUpdates方法是什么呢?这两个方法,是配合起来使用的,标记了一个tableView的动画块。分别代表动画的开始开始和结束。两者成对出现,可以嵌套使用。一般,在添加,删除,选择 tableView中使用,并实现动画效果。在动画块内,不建议使用reloadData方法,如果使用,会影响动画。如果我们的UITableV
2015-11-17 19:29:16 309
转载 Objective-C 三大新特性 nullabilty generics __kindof
NullabilityLightweight Generics *__kindofNullability然而 Nullability 并不算新特性了,从上一个版本的 llvm 6.1 (Xcode 6.3) 就已经支持。这个简版的 Optional ,没有 Swift 中 ? 和 ! 语法糖的支持,在 Objective-C 中就显得非常啰嗦了:
2015-11-17 09:43:14 388
转载 点击空白处隐藏键盘的几种方法
IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们可以实现点击键盘以外的空白区域来将键盘隐藏,以下我总结出了几种隐藏键盘的方法:首先说明两种可以让键盘隐藏的Method:1、[view endEditing:YES] 这个方法可以让整个view取消第一
2015-11-16 17:29:26 1023
转载 tableView Crash
相信很多人会遇到这种情况,当tableView正在滚动的时候,如果reloadData,偶尔发生App crash的情况。 这种情况有时候有,有时候没有,已经难倒了很多人。直至今天,我在stackoverflow上面,仍没有发现真正有说到其本质的帖子。我的处女贴,选择 这个问题来阐述一下我的观点。 小弟我英语很好,一般都是用英语记笔记,当然,我知道,论坛愤青很多,如果只贴英文出来,肯定找骂。
2015-11-16 13:01:33 346
原创 UITableView的reloadData方法,不执行cellForRow方法,
首先是只有tableview将要显示在window上的时候才会进入cellForRow方法。像self.tableView.delegate = self;啊,dataSource数组为空啊,相信都检查过了。也许你会说,我的tableview添加了啊,但是显示一片空白,这时候你给tableview设置个背景色看看,也许你就会发现,tableview并没有显示出来。原因可能有多种,譬如我
2015-11-16 12:57:25 7595 1
原创 Xcode调试-值为nil的情况分析
今天在改老项目的bug的时候,发现了这个问题,也就是打印出来的值全是nil,有时候self居然都变为nil了.好吧!经过一番仔细地排查,总结出来了两点.1-debug模式下2-将编译器优化选项设为None经过这两步的设置,在调试的时候,打印出来的调试信息就正常了
2015-11-16 12:39:42 714
转载 Xcode 常用编译选项设置
乍一看,这些设置可能太麻烦,其实它真的可以节省许多调试应用的时间,在xcconfig文件中指定即可。用标准库连接LINK_WITH_STANDARD_LIBRARIES = YES如果激活此设置,那么编译器在链接过程中会自动使用通过标准库的链接器。Info.plist 输出编码INFOPLIST_OUTPUT_FORMAT = binary指定Info.plist文
2015-11-16 11:23:57 3236
转载 IOS 整体框架类图
目录(?)[+]Cocoa框架是iOS应用程序的基础,了解Cocoa框架,对开发iOS应用有很大的帮助。1、Cocoa是什么?Cocoa是OS X和 iOS操作系统的程序的运行环境。是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发中你可以使用各种语言;也不是开发工具,你可以在命令行上就可以创建Cocoa程序。Cocoa程序可以这么
2015-11-15 20:09:19 312
转载 CoreData NSPredicate在CoreData中的使用
NSPredicate在CoreData中常用作查询使用,相当于sql语句中的where查询子句。最常用的方法为:[objc] view plaincopyprint?NSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...]; 比如我们要查
2015-11-15 20:04:34 320
转载 CoreData CURD
近阶段想做一款针对自己的理财软件,全部实在本地操作,所以要用到数据库。原来一直都是用FMDB,直接用sql语句,后来看到CoreData挺牛逼的,所以我决定要用CoreData去写这个软件。由于对CoreData了解并不是很多,所以我会抽空闲时间,搞定CoreData. 今天学习了CoreData的简单用法,增删改查。由于是一个Demo所以也没怎么进行封装,就迁就着看,再以后
2015-11-15 19:30:22 251
转载 FetchRequestController
我目前的理解,CoreData相当于一个综合的数据存储和管理中心,它支持sqlite,二进制存储文件两种形式的数据存储。而CoreData提供了存储管理,包括查询、插入、删除、更新、回滚、会话管理、锁管理等一系列数据库操作。另外,开发者还可以在xcode中使用 .xcdatamodel 扩展名的文件,以图形化的形式编辑数据模型,这里包括了Entities、Properties、At
2015-11-15 16:33:36 313
原创 PresentViewController动画转场
其实为了更好地控制动画最好的是通过转场动画协议来写,由于时间比较仓库就用了系统自带的一些动画效果.有时间在研究一下,不过这里有个封装得比较好的转场动画,给出链接:https://github.com/kingcodexl/VCTransitionsLibrary视图切换,没有NavigationController的情况下,一般会使用presentViewController来切换视图并携
2015-11-13 17:48:14 8123
原创 由AVPlayer引发出来KVC的坑(KVC使用一定得注意)
做一个视频启动页其实比较简单,自己为了丰富一下功能,就封装了一套AVPlayer,当自己把一切都搞定了之后,调试 草,跳过视频就进行操作就直接崩了.搞了一个下午.最后定为为题的原因.用KVO观察了变化,但是后面移除的实际不正确.导致根本就没移除.Be sure to invoke removeObserver: or removeObserver:name:object: before notif
2015-11-06 10:48:20 792
转载 沙盒目录
documents,tmp,app,Library。(NSHomeDirectory()),手动保存的文件在documents文件里Nsuserdefaults保存的文件在tmp文件夹里1、Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下。这个目录用于存储用户数据或其它应该定期备份的信息。2、AppName.app 目录
2015-11-05 09:54:45 306
转载 复习loadView,ViewDidLoad,initWithNibName,awakeFromNib
转载,原地址为:http://jianyu996.blog.163.com/blog/static/11211455520131226840879/请尊重原创:1,无论XIB还是代码创建都会调用loadView方法。self.view为nil时才会被调用。 手工创建视图时,loadView被调用时self.view还为nil。一般在该方法中手工定制view。
2015-11-04 10:55:52 260
转载 卧槽!这么简单MD
Magical Record是什么在Cocoa中存在一种技术叫Core Data,用来对数据进行持久化,类似于Java世界中的Hibernate。在新建Cocoa Application/iOS Application的向导中,有一个选项是要不要使用Core Data,当启用以后你会发现在AppDelegate.m中添加了大量与Core Data相关的代码,但是你对大部分代码不知所以然
2015-11-03 11:22:23 446
转载 一些值得学习的规范
条件语句 条件语句体应该总是被大括号包围。尽管有时候你可以不使用大括号(比如,条件语句体只有一行内容),但是这样做会带来问题隐患。比如,增加一行代码时,你可能会误以为它是 if 语句体里面的。此外,更危险的是,如果把 if 后面的那行代码注释掉,之后的一行代码会成为 if 语句里的代码。推荐:if (!error) { return success; } 不推荐:if (!error
2015-11-02 14:46:56 1198
转载 iOS框架结构图
Cocoa框架是iOS应用程序的基础,了解Cocoa框架,对开发iOS应用有很大的帮助。 1、Cocoa是什么? Cocoa是OS X和 iOS操作系统的程序的运行环境。 是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发中你可以使用各种语言;也不是开发工具,你可以在命令行上就可以创建Cocoa程序。Cocoa程序可以这么说,它是由一些对象组成,而这些对象的类最后都是
2015-11-02 14:45:04 1123
OpenGL_Tutorial_Enviroment.zip
2019-09-15
Audio Visualizer v2.4.txt
2019-09-08
Computer Networking - A Top Down Approach, 7th, converted.zip
2019-07-26
WireShark(数据包分析实战详解+网络分析就这么简单)合集带目录版_适合学习网络抓包的同学
2019-04-08
lensnews 最新版 2.3 简洁高大上 wordpress 主题
2019-03-23
Web前端开发最佳实践
2018-06-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人