iOS
文章平均质量分 94
qjbagu
这个作者很懒,什么都没留下…
展开
-
UIView常用的一些方法小记之setNeedsDisplay和setNeedsLayout
1,UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的。而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到 UIGraphicsGetCurrentContext,就可以画画了。而setNeedsLayout会默认调用layoutSubViews, 就可以 处理子视图中的一些数据。综转载 2014-06-23 17:12:08 · 511 阅读 · 0 评论 -
使用Auto Layout中的VFL(Visual format language)--代码实现自动布局
本文将通过简单的UI来说明如何用VFL来实现自动布局。在自动布局的时候避免不了使用代码来加以优化以及根据内容来实现不同的UI。一:API介绍NSLayoutConstraint API1234NSLayoutConstraint+ (NSArray *)constraintsWithVi转载 2015-06-25 06:34:48 · 601 阅读 · 0 评论 -
UITableView全面解析
转自:http://www.cnblogs.com/kenshincui/p/3931948.html概述在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信、QQ、新浪微博等软件基本上随处都是UITableView。当然它的广泛使用自然离不开它强大的功能,今天这篇文章将针对UITableView重点展开讨论。今天转载 2015-06-23 10:43:05 · 556 阅读 · 0 评论 -
ios view的frame和bounds之区别(位置和大小)
前言:学习ios开发有一段时间了,项目也做了两个了,今天看视频,突然发现view的frame和bound两个属性,发现bound怎么也想不明白,好像饶你了死胡同里,经过一番尝试和思考,终于弄明白bound的含义。PS:我承认我是一个很笨很笨的人。所以现在记录下来,供以后查阅,同时方便所有和我一样有疑惑的人查看。一、首先列一下公认的资料:先看到转载 2015-05-18 00:20:23 · 493 阅读 · 0 评论 -
IOS中显示和隐藏状态栏的网络活动标志
转载自:http://mmz06.blog.163.com/blog/static/1214169620116109637638/引入在做IOS客户端(iPad、iPhone……)与服务端进行交互时,要进行网络连接,而且一般进行相互交互时都会有一定的时间,这时如果能在状态栏显示和隐藏网络活动标志,这样会有更好的客户体验。实现转载 2015-06-16 12:02:32 · 587 阅读 · 0 评论 -
iOS 获取手机的型号,系统版本,软件名称,软件版本
//手机序列号 NSString* identifierNumber = [[UIDevice currentDevice] uniqueIdentifier]; NSLog(@"手机序列号: %@",identifierNumber); //手机别名: 用户定义的名称 NSString* userPhoneName = [[UIDevice c转载 2015-05-20 12:38:11 · 384 阅读 · 0 评论 -
iOS属性列表
属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以于属性列表文件相互转换。NSArray类常用读写属性列表文件的方法:+arrayWithContentsOfFile:类级构造方法,用于从属性列表文件中读取数据,创建NSArray对象。-initWithContentsOfFile:实例构造方法,用于从属性列表文件中读取数据,创建NSArray对象转载 2015-05-14 23:48:38 · 584 阅读 · 0 评论 -
网易新闻iOS版使用的开源组件
转自:http://www.jianshu.com/p/8952944f7566网易新闻iOS版在开发过程中曾经使用过的第三方开源类库、组件1、AFNetworkingAFNetworking 采用 NSURLConnection + NSOperation, 主要方便与服务端 API 进行数据交换, 操作简单, 功能强大, 现在许多人都用它取代 ASIHTTPRequ转载 2015-05-20 23:49:27 · 522 阅读 · 0 评论 -
nil、Nil、NULL与NSNull的区别
1.nil指向一个对象的指针为空在objc.h中的定义如下所示:[objc] view plaincopy#ifndef nil # if __has_feature(cxx_nullptr) # define nil nullptr # else # define nil __DARWIN_NULL转载 2015-05-15 00:22:02 · 503 阅读 · 0 评论 -
NSUserDefaults读取和写入自定义对象
转自:http://blog.csdn.net/chyroger/article/details/5785297NSUserDefaults可以存取一些短小的信息。比如存入再读出一个字符串到NSUserDefaults:[cpp] view plaincopyNSString *string = [NSString stringW转载 2015-05-14 23:58:23 · 765 阅读 · 0 评论 -
iOS单例的宏定义
// 声明单件类的类方法 #define DECLARE_SINGLETON_FOR_CLASS(classname) \ + (classname*)shared##classname; // 获取单件实例的宏定义 #define GET_SINGLETON_FOR_CLASS(classname) \ [classname shared##classnam转载 2015-06-25 06:37:37 · 660 阅读 · 0 评论 -
Objective-C的内省(Introspection)小结
内省(Introspection)是面向对象语言和环境的一个强大特性,Objective-C和Cocoa在这个方面尤其的丰富。内省是对象揭示自己作为一个运行时对象的详细信息的一种能力。这些详细信息包括对象在继承树上的位置,对象是否遵循特定的协议,以及是否可以响应特定的消息。NSObject协议和类定义了很多内省方法,用于查询运行时信息,以便根据对象的特征进行识别。明智地使用内省可以使面向对转载 2015-05-20 01:03:38 · 502 阅读 · 0 评论 -
IOS基础:深入理解Objective-c中@class的含义
objective-c中,当一个类使用到另一个类时,并且在类的头文件中需要创建被引用的指针时,如下面代码:A.h文件#import "B.h" @interface A : NSObject { B *b; } @end 为了简单起见:A类是引用类,B类是被引用类,这里先不考虑A类的实现文件。通转载 2015-05-25 12:05:08 · 492 阅读 · 0 评论 -
【官方方法】xcode7免证书真机调试
先看官网的图可以看到官方说了xcode7可以让所有人都更轻松的将app运行在自己的设备上,而无需开发者帐号。不过xcode7需要OSX10.11的支持,而目前(2015.06.10)下载后者的开发者预览版是需要开发者帐号的,我在网上找到了资源传到了百度云,OSX10.11:链接: http://pan.baidu.com/s/1kTuzvjL 密码: dbmk,xcode7转载 2015-10-15 06:46:32 · 577 阅读 · 0 评论 -
面向 iOS 开发的十款 XCode 插件
【51CTO译文】一套理想的插件架构几乎能够决定整个集成开发环境的差异与特性。Sublime Text与TextMate就是很好的实例。但大家可能不了解的是,Xcode也支持插件。哈哈,如果各位真的前所未闻,我也不会感到惊讶,毕竟苹果并没有把太多精力用在Xcode的宣传之上。事实上,我们几乎找不到多少用于指导Xcode创建的说明文档。幸运的是,这并没有妨碍开发人员在Xcode这片土地上耕耘转载 2015-10-18 09:28:50 · 614 阅读 · 0 评论 -
CocoaPods的安装和使用
转自:http://blog.csdn.net/ysy441088327/article/details/8611731引言:CocoaPods是一个可以帮你集中管理第三方库的开源项目,运行在Ruby的环境下,基于GitHub托管优势,你可以很方便的查阅目前依赖于CocoaPods的资源.并且,CocoaPods是可靠,稳定,安全的.可以为你在使用第三方库资源时节省转载 2015-10-18 01:42:11 · 431 阅读 · 0 评论 -
loadView与viewDidLoad不同
loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法。 他们都可以用来在视图载入的时候初始化一些内容。 但是他们有什么区别呢? viewDidLoad 方法只有当 view 从 nib 文件初始化的 loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法。 他们都可以用来在视图载入的时候初始化一些内容。转载 2015-07-28 23:39:21 · 440 阅读 · 0 评论 -
初探 iOS8 中的 Size Class
转自:http://blog.csdn.net/yongyinmg/article/details/39315829初探 iOS8 中的 Size Class 2014年 09月 12日文章目录1. 简介2. 实验3. 实战3.1. 修改 Constraints3.2. 安装和卸载 Constraints3.3. 安装和卸载 View3.4. 其转载 2015-06-14 23:17:15 · 444 阅读 · 0 评论 -
xcode6下使用autolayout+sizeclass实践
转自:http://blog.csdn.net/mmoaay/article/details/42240949历史车轮滚滚向前,将autolayout配合sizeclass做布局的方式推上了主流,虽然有点晚,但最终还是进行了一次完整的实践,特此记录一下:因为网上已经有很多博客介绍了autolayout配合sizeclass布局的原理,所以我着重记录一下自己实践的过程:(可能会有错误转载 2015-06-14 22:09:36 · 587 阅读 · 0 评论 -
iOS打印Debug日志的方式
转自:http://blog.csdn.net/lixuwen521/article/details/7675836简单介绍以下几个宏:1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出转载 2015-06-15 17:29:50 · 1379 阅读 · 0 评论 -
ObjC的initialize和init
Objective-C很有趣的一个地方是,它非常非常像C。实际上,它就是C语言加上一些其他扩展和一个运行时间(runtime)。有了这个在每个Objective-C程序中都会起作用的附加运行时间,给了它一些动态的特性。C和C++没有运行时间,他们仅仅被编译为完全按照代码的顺序去执行,不多也不少。Objective-C中带有运行时间的好处是,它可以在你的程序运行的流程中进行参与。在Obj转载 2015-07-02 11:20:01 · 472 阅读 · 0 评论 -
MAC JDK版本切换
通过命令’jdk6′, ‘jdk7′,’jdk8′轻松切换到对应的Java版本:1.首先安装所有的JDk:* Mac自带了的JDK6,安装在目录:/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/下。* JDK7,JDK8则需要自己到Oracle官网下载安装对应的版本。自己安装的JDK默认路径为:/Library/Java/Jav转载 2015-06-10 22:24:21 · 497 阅读 · 0 评论 -
nonatomic, retain,weak,strong用法总结
iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存。但是学习还是很有必要的。在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都很熟悉了,在此我也不介绍,网上有很多相关文章。现在我们看看iOS5中新的关键字strong, weak, unsafe_unretained. 可以与以前的关键字对应学习strong与r转载 2015-05-14 00:03:42 · 513 阅读 · 0 评论 -
loadView和viewDidLoad及initWithNibName/awakeFromNib/initWithCoder
转自:http://www.cnblogs.com/geraldzhang/archive/2011/09/21/2183970.html每个ios开发者对loadView和viewDidLoad肯定都很熟悉,虽然这两个函数使用上真的是非常简单,但是和类似的initWithNibName/awakeFromNib/initWithCoder放在一起还是非常容易让人混淆的.一、l转载 2015-05-15 18:08:55 · 423 阅读 · 0 评论 -
14个Xcode中常用的快捷键操作
在Xcode 6中有许多快捷键的设定可以使得你的编程工作更为高效,对于在代码文件中快速导航、定位Bug以及新增应用特性都是极有效的。当然,你戳进这篇文章的目的也在于想要快速的对代码文件进行操作,或者是让Xcode的各面板更为适应你小本子的屏幕。在Xcode 6所有快捷键中下列这些是首当其冲应当学习的。在你学习到如何使用之后,也许就再也离不开它们了。Xcode导航快捷键转载 2015-05-12 11:07:49 · 380 阅读 · 0 评论 -
IOS工程依赖解耦之静态链接库
1 前言有时候,我们要将某一层服用给其他的团队,公司或者个人,由于某些原因,不能提供源码,这时候就可以将业务层和数据持久层编写成静态链接库(static li'brary或statically-linked library)。转载请注明出处:http://blog.csdn.net/developer_zhang2 详述库是一些没有man函数的程序代码集合。出了静态转载 2014-06-04 05:48:02 · 979 阅读 · 0 评论 -
Storyboard里面的几种Segue区别及视图的切换:push,modal,popover,replace和custom
一、视图切换类型介绍在storyboard中,segue有几种不同的类型,在iphone和ipad的开发中,segue的类型是不同的。在iphone中,segue有:push,modal,和custom三种不同的类型,这些类型的区别在与新页面出现的方式。而在ipad中,有push,modal,popover,replace和custom五种不同的类型。modal 模转载 2014-05-19 17:19:22 · 535 阅读 · 0 评论 -
iOS开发new与alloc/init的区别
英文详解:http://macresearch.org/difference-between-alloc-init-and-new1.在实际开发中很少会用到new,一般创建对象咱们看到的全是[[className alloc] init]但是并不意味着你不会接触到new,在一些代码中还是会看到[className new],还有去面试的时候,也很可能被问到这个问题。转载 2014-05-16 16:16:52 · 489 阅读 · 0 评论 -
iOS分类和扩展(Categories和Extensions)
分类(Category) 分类能够做到的事情主要是:即使在你不知道一个类的源码情况下,向这个类添加扩展的方法。 此外,分类能够保证你的实现类和其他的文件区分开。 1 #import “UIViewController.h”2 @interface UIViewController(CustomView)3 -(void)extMeth转载 2014-05-16 16:26:29 · 500 阅读 · 0 评论 -
IOS之同步请求、异步请求、GET请求、POST请求
1、同步请求可以从因特网请求数据,一旦发送同步请求,程序将停止用户交互,直至服务器返回数据完成,才可以进行下一步操作,2、异步请求不会阻塞主线程,而会建立一个新的线程来操作,用户发出异步请求后,依然可以对UI进行操作,程序可以继续运行3、GET请求,将参数直接写在访问路径上。操作简单,不过容易被外界看到,安全性不高,地址最多255字节;4、POST请求,将参数放到body里转载 2014-05-09 11:39:50 · 461 阅读 · 0 评论 -
IOS沙盒的文件操作
1、模拟器沙盒目录文件都在个人用户名文件夹下的一个隐藏文件夹里,中文叫资源库,他的目录其实是Library。1.1 方法1、可以设置显示隐藏文件,然后在Finder下直接打开。设置查看隐藏文件的方法如下:打开终端,输入命名显示Mac隐藏文件的命令:defaults write com.apple.finder AppleShowAllFiles -bool tr转载 2014-05-05 23:40:06 · 528 阅读 · 0 评论 -
iOS常用控件尺寸大集合
iosi元素控件尺寸(pts)Window(含状态栏)320 x 480Status Bar的高度20Navigation Bar的高度44含Prompt的Navigation Bar的高度74Navigation Bar的图标20×20(转载 2014-05-05 13:00:39 · 568 阅读 · 0 评论 -
ios输入框被键盘挡住的解决办法
做IOS开发时,难免会遇到输入框被键盘遮掩的问题。上网上搜索了很多相关的解决方案,看了很多,但是由衷的觉得太麻烦了。 有的解决方案是将视图上的所有的东西都添加到一个滚动视图对象( UIScrollView )中,然后滚动视图实现输入框不被软键盘覆盖,个人觉得此方案好是好,但是太过麻烦。 有的解决方案是通过一个通知 UIKeyboardDidShowNotificatio转载 2014-05-05 13:06:17 · 544 阅读 · 0 评论 -
图文解释XCode常用快捷键的使用
刚开始用Xcode是不是发现以前熟悉的开发环境的快捷键都不能用了?怎么快捷运行,停止,编辑等等、都不一样了。快速的掌握这些快捷键,能提供开发的效率。其实快捷键在Xcode的工具栏里都标注有,只是有的符号和你的键盘上的符号对应不起来罢了。下面截图工具栏里的快捷键总结一下常用快捷键的用法。一、关于运行调试1、运行,停止,都在工具栏的Product里。Comm转载 2014-05-05 16:01:21 · 503 阅读 · 0 评论 -
ios实现程序切入后台,实现后台任务
1,项目需求,是程序home键切入后台,3分钟后退出登陆, 首先,iOS 会再持续切入后台,给我们5秒钟的时间去处理相关数据,5秒后,程序不会再执行任何代码,处于挂起状态。 - (void)applicationDidEnterBackground:(UIApplication *)application { //切入后台 ,申请后台任务时转载 2014-05-27 16:17:31 · 748 阅读 · 0 评论 -
25条iOS开发中类型的转换和常用的知识点-总结
转自:http://www.cnblogs.com/pengyingh/articles/2382942.html在写代码的时候很容易被一些那些我们看似简单的问题难住,也严重影响了我们工作的进度,所以今天把一些在iOS中常用 关于类型的转换和常用的用法总结下。字符的表示含义:%c 一个单一的字符%d 一个十进制整数%i 一个整数 //原来i%是这个区别啊转载 2014-07-01 19:32:19 · 574 阅读 · 0 评论 -
iOS Crash文件分析
一.iOS crashs一般有如下四种:Application crashLow memoryWatchdog timeoutUser force-quit当前我们的ERead程序遇到了前三种core问题。只有Application crash文件才会提供有用的crash堆栈。Low memory 主要是程序申请不到可用的内存转载 2014-06-13 14:07:23 · 783 阅读 · 0 评论 -
iOS动画浅析
转自:http://blog.sina.com.cn/s/blog_7b9d64af0101b8nh.html在iOS中动画实现技术主要是:Core Animation。 Core Animation负责所有的滚动、旋转、缩小和放大以及所有的iOS动画效果。其中UIKit类通常都有animated:参数部分,它可以允许是否使用动画。 Core Animation转载 2015-03-17 18:04:36 · 529 阅读 · 0 评论 -
iOS生成静态库方法-iOS集成静态库-iOS合并静态库
转自:http://blog.sina.com.cn/s/blog_7b9d64af0101jlym.html在iOS的开发过程中,我们常常用到第三方的库。尤其是QQ、百度地图、广告等。那么,如何制作自己的库文件呢?如果,将自己写的功能类编译成库文件,分发给其他人来使用呢?静态库的优点编译静态库的好处也还是有的!1.让自己的源码不被直接暴漏。2.需要转载 2015-03-17 15:00:36 · 433 阅读 · 0 评论 -
iOS-生成Bundle包-引入bundle-使用bundle
转自:http://blog.sina.com.cn/s/blog_7b9d64af0101jmj2.html在我们使用第三方框架时,常常看到XXX.bundle的文件。我们找到该文件,显示包内容,大致看到很多资源文件:图片、配置文本、XIB文件……什么是Bundle文件?简单理解,就是资源文件包。我们将许多图片、XIB、文本文件组织在一起,打包成一转载 2015-03-17 11:47:22 · 528 阅读 · 0 评论