
点滴积累->iOS开发
moon_prince2013
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UIControlEventEditingDidEnd和UIControlEventEditingDidOnExit各自的触发时机
UIControlEventEditingDidEnd : 当TextField控件失去焦点时触发,无论控件里面有没有输入文本;UIControlEventEditingDidOnExit : 当输入文字时,点击键盘的返回键(Return Key)时触发。此后界面上的“第一响应者”(First Responder)不存在。原创 2015-11-27 19:46:30 · 2694 阅读 · 0 评论 -
开发者如何高效利用GitHub
来源:阳志平的个人网站正是Github,让社会化编程成为现实。本文尝试谈谈GitHub的文化、技巧与影响。Q1:GitHub是什么Q2:GitHub风格Q3: 在GitHub,如何跟牛人学习Q4: 享受纯粹的写作与演讲Q5: 代码帮你找工作Q6: GitHub还在影响一些什么Q7: 除了GitHub,还可以选择什么?Q1:GitHub是什么A1:一家公司转载 2015-11-14 16:06:08 · 469 阅读 · 0 评论 -
对UIBackBarButtonItem的理解
(此文章可结合 对NavigationController/Bar/Item、self.navigationItem/self.navigationController.navigationItem区别的理解 进行阅读)UIBackBarButtonItem(返回按钮)是由全局UINavigationController控制生成的(设置在当前视图控制器的UINavigationItem原创 2015-10-12 18:23:45 · 905 阅读 · 0 评论 -
开始iOS 7中自动布局教程(一)
到目前为止,如果你的设计相当的复杂,那么你必须编写大量的代码来适应这样的布局。你应该很高兴,现在这样的情况再也不存在了--iOS6为iPhone和iPad带来了一个极好的新特性:自动布局。X原文:Beginning Auto Layout Tutorial in iOS 7: Part 1感谢翻译小组成员@answer-huang(博客)热心翻译。如转载 2015-10-23 14:44:46 · 1137 阅读 · 0 评论 -
开始iOS 7中自动布局教程(二)
这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局。但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译。前半部分已经转载至本博客,后半部分即本篇。学习IOS自动布局的朋友可以看看。自动布局很强大。这篇教程绝对的最好的学习IOS自动布局的文章,没有之一原文地址:Beginning Auto Layout Tutorial in转载 2015-10-23 14:54:02 · 392 阅读 · 0 评论 -
简单方法解决设置IBOutlet变量时中出现的“Could not insert new outlet connection”
解决方法:(假设当前xib文件对应的控制器为YourViewController)第一步:删除当前xib文件以及对应的控制器文件(YourViewController.m、YourViewController.h都要删)第二步:重新创建YourViewController;第三步:退出Xcode;第四步:重新打开项目;问题解决。(参考地址:http://stac原创 2015-10-10 16:09:53 · 955 阅读 · 0 评论 -
ViewController中[self setTtile]与[self.navigationItem setTitle]的区别
在显示效果上,没有区别,都是设置当前视图的标题;在底层原理上,有区别:[self setTtile]:通过设置当前控制器的title属性,来代表当前控制器的标题;[self.navigationItem setTitle]:通过设置当前控制器的navigationItem.title属性,来代表当前控制器的标题;--------------假如[self s原创 2015-10-12 20:28:19 · 860 阅读 · 0 评论 -
总结Nib(xIB)、File's owner、NSBundle、loadView/viewDidLoad、initWithNibName的相关基础知识
什么是Nib文件:【注:不准确地讲,就是一个可以往里面拖控件的界面设计文件】Nib(也叫Xib)文件是一种特殊类型的资源文件,它用于保存iPhone OS或Mac OS X应用程序的用户接口。Nib文件是Interface Builder文档。通常您会使用Interface Builder设计应用程序的可视部分-例如窗口或视图。有些时候,您可能也用它来配置一些不可视的对象,例如控制器对象(转载 2015-10-09 11:58:58 · 1440 阅读 · 0 评论 -
发生xib文件关联不到.h文件时,可以尝试重新打开.h文件,再进行关联
No more,that's all.原创 2015-10-10 18:19:50 · 464 阅读 · 0 评论 -
ARC模式中的dealloc函数
众所周知,iOS开发的时候,使用ARC的话,dealloc函数是不需要实现的,写了反而会出错。但有些特殊的情况,dealloc函数还是需要的。比如,在画面关闭的时候,需要把ViewController的某些资源释放,在viewDidDissppear不一定合适,viewDidUnload一般情况下只在memory warning的时候才被调用。不用ARC的情况下,我们自然会想到de转载 2015-10-12 20:33:13 · 604 阅读 · 0 评论 -
Objective-C中@class和#import的区别
C/C++中使用#include来包含头文件,缺点就是同一个头文件可能被包含多次。Objective-C中使用了#import来包含头文件,优点就是同一个头文件只能包含一次。@class和#import是为了解决循环引用导致的死锁问题#import会包含这个类的所有信息,包括实体变量和方法,而@class只是告诉编译器,其后面声明的名称是类的名称,至于这个类是如转载 2015-10-02 11:16:10 · 306 阅读 · 0 评论 -
[[UIScreen mainScreen] bounds]和 applicationFrame的区别
http://my.oschina.net/chengliqun/blog/145067转载 2015-10-09 15:01:51 · 515 阅读 · 0 评论 -
[[UIBarButtonItem alloc] initWithTitle与[[UIBarButtonItem alloc] initWithBarButtonSystemItem的区别
总结的区别是:[[UIBarButtonItem alloc] initWithTitle主要用于定义按钮的文字标题,[[UIBarButtonItem alloc] initWithBarButtonSystemItem主要用于定义按钮的图片(不能定义标题)。我们看下这两种初始化方法在苹果开发文档中是如何定义的:一、[[UIBarButtonItem alloc] initW原创 2015-10-12 07:40:41 · 2614 阅读 · 0 评论 -
ios虚拟键盘右下角的return键,无论文字是“Done”还是“return”或者其他,都叫“return键”(Return Key)
内容如题。原创 2015-10-16 10:13:45 · 2193 阅读 · 0 评论 -
Autolayout的Top Layout guide
问题描述在学习UIPageViewController的过程中,按照《【译】如何使用Storyboard创建UIPageViewController》编写引导页Demo,但是做完的效果和Demo效果有一些出入,效果分别为:正确效果、错误效果。简单说就是当滑动到下一页的时候,下一页会有一个缩小效果,但是这个效果并不是手动添加的。分析问题之前的那篇《iOS学习笔记——UIScrol转载 2015-11-27 11:04:22 · 5077 阅读 · 0 评论 -
iOS6、7各自的导航栏、状态栏
(文章出处:http://www.cocoachina.com/design/20131104/7287.html)转载 2015-11-27 10:53:48 · 670 阅读 · 0 评论 -
使用Xcode 查看objective-C的汇编代码
Xcode自带将某一个源文件转化成汇编的功能,如图:汇编的部分代码如下:# Assembly output for assemble.c# Generated at 2:29:34 下午 on 星期一, 八月 18, 2014# Using Debug configuration, x86_64 architecture for dataStruct target of d转载 2015-11-20 03:38:18 · 1449 阅读 · 0 评论 -
xcode 4.3 调试的时候显示汇编,怎么办
菜单product=》Debug Workflow=》Show Disassembl*************** 勾给去掉。(文章出处:http://www.cnblogs.com/max5945/archive/2012/08/06/2625744.html)转载 2015-11-20 03:37:02 · 327 阅读 · 0 评论 -
CGAffineTransformInvert: singular matrix. 解决方案
这个错误叫奇异矩阵,引起的原因有三种:1 [UIFont fontWithName:@"AFontName" size:0] 你把字体的size设置为0了2 你添加的view控件frame为0 例如:I was seeing this problem too when I added a UIWebView to my self.view.The o转载 2015-11-03 10:58:04 · 3525 阅读 · 0 评论 -
Xcode键盘快捷键,敲代码时狠有用!
ommand相当于win键;control相当于Ctrl键;option相当于Alt键;command + [ 左移选中的代码command + ] 右移选中的代码command + / 注释(先选中代码)t转载 2015-11-03 11:27:14 · 741 阅读 · 0 评论 -
Xcode开发调试技巧—断点调试
1.Condational Breakpoints(条件断点) 普通断点只要执行到断点所在行就会停止程序,但是有时候我们想当满足一定条件时才停止程序。这个调试技巧在当你想要捕获一个循环中的变量的特定值或者一些不常发生的情况时是非常有用的,而不用你每次迭代都停止来查看。 怎样开启条件变量? 1.添加一个普通断点 2.右键点击断点选择“Edit Breakpoint”转载 2015-11-03 10:37:53 · 588 阅读 · 0 评论 -
Xcode出现警告:Terminating app due to uncaught exception 'NSUnknownKeyException'的解决方法
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key myBtn.'*** Call stack at firs转载 2015-11-03 10:09:53 · 9670 阅读 · 0 评论 -
GitHub 上都有哪些值得关注学习的 iOS 开源项目?
http://www.zhihu.com/question/22914651转载 2015-11-24 09:10:30 · 266 阅读 · 0 评论 -
iPhone项目的BaseSDK和DeploymentTarget
iPhone OS的版本众多,很多用户由于各种各样的原因没有升级到最新版,这就给我们开发者带了麻烦。作为开发者,我们都希望软件的受众越多越好。怎么样让软件尽量适应最多的iPhone OS?这里我们就应该了解iPhone项目的Base SDK和iPhone OS Deployment Target。Base SDK指的是当前编译用的SDK版本。iPhone OS Deployment Targe转载 2015-11-23 23:55:05 · 416 阅读 · 0 评论 -
Xcode cannot run using the selected device-无法真机调试
今天遇到这么一个问题,当我将程序功能完成,需要上真机调试时,却发现:找不到真机选项:cannot run using the selected device-无法真机调试" alt="Xcode cannot run using the selected device-无法真机调试" src="http://s1.sinaimg.cn/mw690/7b9d64aftcdf81840a8c0&6转载 2015-11-22 16:46:39 · 409 阅读 · 0 评论 -
对NavigationController/Bar/Item、self.navigationItem/self.navigationController.navigationItem区别的理解
(刚学计算机的新手请先百度,学习什么是“栈”。本人简单形容:栈就相当于放在一个地上可以装书本的盒子,放进去的顺序为书本1、2、3,拿出来的顺序则为3、2、1)每个ViewController只有一个NavigationItem属性,默认目的是显示当前视图控制器ViewController的主题(title)。Xcode文档对NavigationItem是这么解释的(关键词:“Nav原创 2015-10-12 14:16:40 · 1922 阅读 · 0 评论 -
开始iOS 7中自动布局教程(一)
http://www.cocoachina.com/industry/20131203/7462.html转载 2015-09-22 00:22:14 · 325 阅读 · 0 评论 -
Bug?Xcode中控制器头文件重写后无法和xib文件连接
新建一个RootViewController(有关联xib文件),.h文件初始代码一般如下:不理它,找到对应的xib文件,往里面添加控件后,可以连接控制器头文件RootViewController:但是现在,把右边.h文件的代码删除,自己手写或重新粘贴代码上去,就连接不上了:如果这个不是Xcode设计者有意为之的话原创 2015-10-10 17:30:15 · 865 阅读 · 0 评论 -
5个Xcode开发调试技巧
1.Enable NSZombie Objects(开启僵尸对象)Enable NSZombie Objects可能是整个Xcode开发环境中最有用的调试技巧。这个技巧非常非常容易追踪到重复释放的问题。该技巧会以非常简洁的方式打印指出重复释放的类和该类的内存地址。怎么开启僵尸对象呢?首先打开“Edit Scheme”(或者通过热键⌘),然后选择Diagnostics选项卡,勾选转载 2015-11-03 11:03:52 · 271 阅读 · 0 评论 -
iOS开发系列—Objective-C之Foundation框架
概述我们前面的章节中就一直新建Cocoa Class,那么Cocoa到底是什么,它和我们前面以及后面要讲的内容到底有什么关系呢?Objective-C开发中经常用到NSObject,那么这个对象到底是谁?它为什么又出现在Objective-C中间呢?今天我们将揭开这层面纱,重点分析在IOS开发中一个重要的框架Foundation,今天的主要内容有:Foundation概述常用结构体日期转载 2015-11-04 07:33:19 · 471 阅读 · 0 评论 -
ios开发之AppDelegate
创建应用程序之后之后,默认有AppDelegate.h文件与AppDelegate.m文件。 AppDelegate为何物? AppDelegate为整个应用的一个代理,提供程序启动、退出等类似监控的接口。 AppDelegate.m 接口所在的文件,常见接口有: application didFinishLaunchingWith转载 2015-10-18 15:26:24 · 1225 阅读 · 0 评论 -
iOS开发之理解iOS中的MVC设计模式
模型-视图-控制器(Model-View-Controller,MVC)是Xerox PARC在20世纪80年代为编程语言Smalltalk-80发明的一种软件设计模式,至今已广泛应用于用户交互应用程序中。在iOS开发中MVC的机制被使用的淋漓尽致,充分理解iOS的MVC模式,有助于我们程序的组织合理性。模型对象模型对象封装了应用程序的数据,并定义操控和处理该数据的逻辑和运算。转载 2015-10-18 15:05:23 · 317 阅读 · 0 评论 -
Swift语言 快速基础入门 (1)
(文章出处:http://blog-cn.jiazhewang.com/swift%E8%AF%AD%E8%A8%80-%E5%BF%AB%E9%80%9F%E5%9F%BA%E7%A1%80%E5%85%A5%E9%97%A8/)本文内容分为两部分,本页是第(1)部分,第二部分请点此浏览:Swift语言 快速基础入门 (2)快速入门 A Swift Tour转载 2015-10-18 09:12:39 · 972 阅读 · 0 评论 -
NSCharacterSet
NSCharacterSet ,以及它的可变版本NSMutableCharacterSet,用面向对象的方式来表示一组Unicode字符。它经常与NSString及NSScanner组合起来使用,在不同的字符上做过滤、删除或者分割操作。(摘录自:http://nshipster.cn/nscharacterset/)转载 2015-11-04 07:25:50 · 352 阅读 · 0 评论 -
NSPredicate
简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取。定义(最常用到的方法):[cpp] view plaincopyNSPredicate *ca = [NSPredicate predicateWithFormat:(NSString *), ...];转载 2015-11-04 07:13:54 · 274 阅读 · 0 评论 -
获取当前被按下的控件的方法(setTag)、获取控件子视图的方法(viewWithTag)
以UIButton为例,你给每个按钮设置一个tag【注:可以在Storyboard中添加,或者在代码中添加】,然后在你自定义的方法中做如下操作:- (void)_btnPressed:(id)sender{UIButton *btn = (UIButton *)sender;switch(btn.tag){case xxx:// do your own work.....break转载 2015-11-04 06:54:54 · 1311 阅读 · 0 评论 -
iOS 如何进行逆向工程?
http://www.zhihu.com/question/20317296转载 2015-11-04 04:49:22 · 342 阅读 · 0 评论 -
Swift语言 快速基础入门 (2)
(文章出处:http://blog-cn.jiazhewang.com/swift%E8%AF%AD%E8%A8%80-%E5%BF%AB%E9%80%9F%E5%9F%BA%E7%A1%80%E5%85%A5%E9%97%A8-2/)本文根据《The Swift Programming Language》一书 “A Swift Tour” 章节进行了简单地翻译,并加入了一些我转载 2015-10-18 09:15:09 · 524 阅读 · 0 评论 -
IOS 开发笔记-基础 UI(8)控件连线的 strong 和 weak 设定
ARC是苹果为了简化程序员对内存的管理,推出的一套内存管理机制,使用ARC机制,对象的申请和释放工作会在运行时,由编译器自动在代码中添加retain和release1> strong:强指针引用的对象,在生命周期内不会被系统释放,在OC中,对象默认都是强指针2> weak:弱指针引用的对象,系统会立即释放,弱指针可以指向其他已经被强指针引用的对象他们都是 arc 的东西转载 2015-10-17 19:00:17 · 951 阅读 · 0 评论 -
NSString去除两边空格字符,like trim()
NSString *cleanString = [dirtyString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; 还有就是去除多于的空格,如下:NSString *theString = @" Hello this is a long转载 2015-11-03 17:19:07 · 358 阅读 · 0 评论