IOS开发
文章平均质量分 77
不朽的神话
宁愿跑起来被拌倒无数次,也不愿规规矩矩走一辈子。就算跌倒也要豪迈的笑 。
展开
-
NSProgress
苹果公司在 iOS 7 and OS X 10.9引入NSProgress类,目标是建立一个标准的机制用来报告长时间运行的任务的进度。NSProgress引入之后,其最重要的作用是可以在一个app的多个不需要紧耦合的模块之间产生进度报告。举个例子,一个运行在后台队列中的图片操作,这个操作应该能够把它的进度通知给一个视图控制器 (并且这个视图控制器也可以暂停或者终止该操作),甚至两个对象不可能持转载 2014-05-23 09:06:01 · 1337 阅读 · 0 评论 -
IOS中NSUserDefaults的用法(轻量级本地数据存储)
NSUserDefaults适合存储轻量级的本地数据,比如要保存一个登陆界面的数据,用户名、密码之类的,个人觉得使用NSUserDefaults是首选。下次再登陆的时候就可以直接从NSUserDefaults里面读取上次登陆的信息咯。因为如果使用自己建立的plist文件什么的,还得自己显示创建文件,读取文件,很麻烦,而是用NSUserDefaults则不用管这些东西,就像读字符串一样,直接原创 2014-01-09 09:26:04 · 760 阅读 · 0 评论 -
编写高质量的Objective-C代码
点标记语法属性和幂等方法(多次调用和一次调用返回的结果相同)使用点标记语法访问,其他的情况使用方括号标记语法。良好的风格:view.backgroundColor = [UIColor orangeColor];[UIApplication sharedApplication].delegate;不良的风格:[view setBackgroundColor:[U转载 2014-01-07 22:43:47 · 706 阅读 · 0 评论 -
Animatable Properties
Animatable PropertiesMany of the properties in CALayer and CIFilter can be animated. This appendix lists those properties, along with the animation used by default.CALayer Animatable Prope原创 2014-01-04 15:37:33 · 983 阅读 · 0 评论 -
Core Animation之多种动画效果
前面介绍了Core Animation基础知识,还有CALayer的简单使用,最终还是有要动画的滴,这里列出几个动画效果,参考下能加深对Core Animation的认识和理解1、把图片移到右下角变小透明使用CAAnimationGroup叠加动画效果,就是下面按钮《把图片移到右下角变小透明》描述的效果: 、上面三个图是动画的三个状态,实现代码如下:转载 2014-01-04 14:15:59 · 971 阅读 · 0 评论 -
Core Animation之简单使用CALayer
上篇Core Animation之基础介绍提到CALayer的重要性,那咱们就试试CALayer如何使用。1、什么是CALayerCALayer是个简单的类,它是用来在屏幕上显示内容展示的矩形区域。 靠,这是不描述UIView的话吗?其实他们是有区别的。每个UIView都有一个根CALayer,UIView在这个layer上描绘东西。那怎么访问这个layer呢,很简单:转载 2014-01-04 14:15:24 · 833 阅读 · 0 评论 -
Core Animation之基础介绍
Core Animation可以翻译为核心动画,它为图形渲染和动画提供了基础。使用核心动画,你只需要设置一些参数比如起点和终点,剩下的帧核心动画为你自动完成。核心动画使用硬件加速,不用消耗cpu资源。其实平时咱们开发的iOS应用都在有意无意的使用了核心动画。动画不会替代View,而是和View一起提供更好的性能。Core Animation通过缓存view上的内容到bitmap,这样bitmap就转载 2014-01-04 14:14:39 · 792 阅读 · 0 评论 -
初识block
初识block本文由破船译自rypress转载请注明出处!小引本周末微博上朋友发了一个关于block的MV,只能说老外太逗了。大家也可以去看看怎么回事: Cocoa Got Blocks。虽然之前也有接触过block,不过没有深入完整的学习过,借此机会来学习一下,顺便翻译几篇block相关的文章,本文是第一篇,算是block的入门。本文的最后延伸阅读给出了4篇相关文转载 2014-01-03 13:19:39 · 1091 阅读 · 0 评论 -
IOS6新特征
候深度集成了Twitter,而Apple似乎从中尝到了不少甜头。现在Apple深度集成了Facebook和Sina Weibo。是的你没看错..新浪微博现在被深度集成了。对于开发这来说,特别是中国开发者来说确实是个好消息,因为如果只是想发条信息的话,不再需要进行繁琐的API申请,不再需要接受新浪恶心的应用审核,也不再需要忍受新浪程序员写出来的错误百出的SDK了。使用新的Social.framewo转载 2014-01-02 20:41:24 · 676 阅读 · 0 评论 -
Block剧终:Objective-C中的闭包性和匿名函数
Block剧终:Objective-C中的闭包性和匿名函数blocks-1024x576本文由破船译自xs-labs转载请注明出处!小引还记得昨天我给大家推荐的文章吗:Closure and anonymous functions in Objective-C。今天手痒,还想继续敲几个字,索性我就把这篇文章敲出来,以此对block说声代码里见吧。目录转载 2014-01-03 13:34:18 · 743 阅读 · 0 评论 -
iOS6新特征:UICollectionView介绍
1.1. Collection View全家福:UICollectionView, UITableView, NSCollectionViewn 不直接等效于NSCollectionViewn 也不替代UITableView----亲兄弟 为什么要使用Collection Views呢?n 可以高度定制内容的展现n 管理数据最佳的做法n 即使是处理转载 2014-01-02 20:17:33 · 777 阅读 · 0 评论 -
深度围观block:第一集
深度围观block:第一集blocks_2x 本文由破船译自galloway转载请注明出处!小引还记得之前的两篇文章吗:iOS汇编教程:ARM(1)和iOS汇编教程:ARM(2),里面介绍了Objective-C生成的汇编代码。本文介绍的内容也跟汇编相关,只不过是与block相关,如果对汇编有不了解的,可以先去看看那两篇带有启蒙性质的文章哟。本文将从汇编转载 2014-01-03 13:31:55 · 843 阅读 · 1 评论 -
深度围观block:第三集
深度围观block:第三集blocks1本文由破船译自galloway转载请注明出处!小引本文是深度围观block的第三篇文章,也是最后一篇。希望读者阅读了之后,对block有更加深入的理解,同时也希望之前对汇编语言恐惧或者陌生的读者转变看法,其实只要你用心去看,去学,很容易就搞懂的。另外由于block具有闭包性,我们也可以将其当做匿名函数,所以大家如果转载 2014-01-03 13:33:35 · 630 阅读 · 0 评论 -
深度围观block:第二集
深度围观block:第二集blocks本文由破船译自galloway转载请注明出处!小引今天翻译了第二篇,这个翻译是比较痛苦(其实不止这篇,所有的都是), 不比单纯的阅读,许多地方需要查阅资料,并细心的遣词造句,还得注意词不达意的地方(例如文中的A block that captures scope我翻译为block的拷贝范围,总感觉缺了一些作者原意,功力有限啊转载 2014-01-03 13:32:53 · 692 阅读 · 0 评论 -
IOS中Socket详解
一、网络各个协议:TCP/IP、SOCKET、HTTP等网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。其中物理层、数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象;传输层、会话层、表示层和应用层则被称作主机层,是用户所面向和关心的内容。 http协议 对应于应用层 tcp协议 对应于传输层原创 2014-01-09 09:34:18 · 1028 阅读 · 0 评论 -
在IPhone桌面的应用程序图标右上角显示数字
能够在ios桌面的程序icon右上角显示数字(badge number)的方法:在ViewController中的viewDidLoad方法中添加如下代码即可:[cpp] view plaincopy- (void)viewDidLoad { [super viewDidLoad];原创 2014-01-09 09:29:50 · 1405 阅读 · 1 评论 -
IOS开发之──ASIHTTPRequest详解
ASIHTTPRequest是一款极其强劲的HTTP访问开源项目。让简单的API完成复杂的功能,如:异步请求,队列请求,GZIP压缩,缓存,断点续传,进度跟踪,上传文件,HTTP认证在新的版本中,还加入了Objective-C闭包Block的支持,让我们的代码更加轻简灵活。下面就举例说明它的API用法。发起一个同步请求同步意为着线程阻塞,在主线程中使用此方法会使原创 2014-01-09 09:36:54 · 892 阅读 · 0 评论 -
iOS7的设计精髓(下)
四、聚焦于内容 在iOS7里,强调的不是眼花缭乱的装饰效果,而是最重要的内容本身。 下面我们来探讨这个主题: 1.删除不必要的内容 伟大的设计更多是减法和加法的组合。 虽然很酷的想法是很重要,但还有更重要的——杀死那些很酷的想法,以保持应用程序的重点。 1.1.不再强调chrome chrome是指您的应用里不是内容本身的一部分,如导航栏和标转载 2014-05-04 14:17:16 · 1152 阅读 · 0 评论 -
iOS7的设计精髓(上)
简介:本文翻译自《iOS7 by Tutorials》一书的第一章“Designing for iOS 7”,主要从程序员角度介绍了iOS7的新设计理念,堪称神作!本文翻译仅作学习交流之用,版权归原作者所有,有删减。非专业翻译人士粗糙之处在所难免,想体会原文精髓的朋友请到Raywenderlich商店支持正版。—————— by 葛布林大帝关于作者:这篇文章的原作者转载 2014-05-04 14:15:22 · 963 阅读 · 0 评论 -
六种常见的数据加载模式设计
设计师在进行APP设计的设计时,往往会更加专注于界面长什么样,界面和界面之间怎么跳转,给予用户什么样的操作反馈,却偏偏特别容易忽略掉一个比较重要的环节,就是APP数据加载中的设计,所以会导致我们看到的APP,往往有着华丽的启动界面,然后就是漫长的数据加载等待,甚至在无网络的时候,整个处于不可用状态。那么我们怎么处理好界面交互中的加载设计,保证体验无缝衔接,保证用户没有漫长的等待感,而可以轻松自在的转载 2014-04-15 08:49:02 · 1200 阅读 · 0 评论 -
IOS中如何判断当前网络状态
众所周知,我们在开发APP时,涉及网络连接的时候,都会想着提前判断一下当前的网络连接状态,如果没有网络,就不再请求url,省去不必要的步骤,所以,这个如何判断?其实很简单。前提:工程添加:SystemConfiguration.framework framework去苹果API里搜索Reachability,下载demo,把demo里的Reachability.h和Re原创 2014-03-07 15:15:13 · 1455 阅读 · 0 评论 -
IOS中计算文件的大小
通常用于删除缓存的时,计算缓存大小//单个文件的大小- (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manager = [NSFileManager defaultManager]; if ([manager fileExistsAtPath:filePath]){ return原创 2014-03-07 15:05:37 · 1129 阅读 · 0 评论 -
MKNetworkKit: 网络处理又一利器
MKNetworkKit: 网络处理又一利器 诚邀您来使用首页新闻日历功能!分享类型:应用开发相关没有认识MK之前,即便ASI已经不再更新,也没有启用ASI。因为ASI对于网络的处理更偏向于底层,适合针对各种情形的扩展。 但是,今天我要开始使用 MKNetworkKit了,项目在github上,使用说明在作者的主页上。 之所以推荐转载 2014-02-16 15:23:55 · 864 阅读 · 0 评论 -
IOS绘图详解
Core Graphics Framework是一套基于C的API框架,使用了Quartz作为绘图引擎。它提供了低级别、轻量级、高保真度的2D渲染。该框架可以用于基于路径的绘图、变换、颜色管理、脱屏渲染,模板、渐变、遮蔽、图像数据管理、图像的创建、遮罩以及PDF文档的创建、显示和分析。为了从感官上对这些概念做一个入门的认识,你可以运行一下官方的example code。 iOS原创 2014-02-13 20:55:39 · 1541 阅读 · 0 评论 -
IOS面试题
1,什么是键-值,键路径是什么答:模型的性质是通过一个简单的键(通常是个字符串)来指定的。视图和控制器通过键来查找相应的属性值。在一个给定的实体中,同一个属性的所有值具有相同的数据类型。键-值编码技术用于进行这样的查找—它是一种间接访问对象属性的机制。键路径是一个由用点作分隔符的键组成的字符串,用于指定一个连接在一起的对象性质序列。第一个键的性质是由先前的性质决定的,接下来原创 2014-02-22 09:19:52 · 974 阅读 · 0 评论 -
IOS开发之苹果私有API的使用
//查看苹果所有的API //首先要导入#import NSString *className = NSStringFromClass([UITabBarController class]); //这里是uiview,可以改成自己想要的 const char *cClassName = [className UTF8String]; i原创 2014-01-19 12:04:01 · 1498 阅读 · 0 评论 -
IOS开发之Objective-C与JavaScript交互操作
OS开发之Objective-C与JavaScript交互操作是本文要介绍的内容,主要主要是讲解了stringByEvaluatingJavaScriptFromString的用法,它的功能非常的强大,用起来非常简单,通过它我们可以很方便的操作uiwebview中的页面元素。UIWebView是iOS最常用的8SDK之一,它有一个stringByEvaluatingJavaScriptFrom原创 2014-01-19 12:24:32 · 1051 阅读 · 0 评论 -
IOS开发之宏的深度学习
宏定义在C系开发中可以说占有举足轻重的作用。底层框架自不必说,为了编译优化和方便,以及跨平台能力,宏被大量使用,可以说底层开发离开define将寸步难行。而在更高层级进行开发时,我们会将更多的重心放在业务逻辑上,似乎对宏的使用和依赖并不多。但是使用宏定义的好处是不言自明的,在节省工作量的同时,代码可读性大大增加。 如果想成为一个能写出漂亮优雅代码的开发者,宏定义绝对是必不可少的技能(虽然宏原创 2014-01-23 15:23:09 · 1345 阅读 · 0 评论 -
iOS7中容易被忽视的新特性
原文:Easily Overlooked New Features in iOS 7 iOS7到现在已经发布了有一段时间了。相信你现在已经了解了它那些开创性的视觉设计,已经了解了它的新的API,比如说SpirteKit,UIKit Dynamics以及TextKit,作为开发者,也很可能已经在使用Xcode5进行开发了。 然而,它新颖以及备受争议的特性,让iOS7成为iOS系统史上最大的发布之一。翻译 2014-01-23 15:28:35 · 1288 阅读 · 0 评论 -
IOS中过滤HTML标签
- (void)dooo{ NSLog(@"------"); NSString * str=@"AC米兰官方宣布阿莱格里下课 北京时间1月13日晚6时,意甲AC米兰俱乐部官方宣布主帅阿莱格里下课。昨天的意甲第19轮比赛中,AC米兰客场3比4不敌升班马萨索洛,比赛结束之后就传出了阿莱格里将会被解雇的消息。 米兰的官方公告中写道:“阿莱格里先生和他的助手们将不再担任球原创 2014-01-13 23:30:22 · 2056 阅读 · 0 评论 -
iOS应用程序生命周期(前后台切换,应用的各种状态)详解
iOS的应用程序的生命周期,还有程序是运行在前台还是后台,应用程序各个状态的变换,这些对于开发者来说都是很重要的。 iOS系统的资源是有限的,应用程序在前台和在后台的状态是不一样的。在后台时,程序会受到系统的很多限制,这样可以提高电池的使用和用户体验。//开发app,我们要遵循apple公司的一些指导原则,原则如下:1、应用程序的状态状态如下:Not running转载 2014-01-02 20:47:37 · 790 阅读 · 0 评论 -
iOS6新特征:UIRefreshControl[下拉刷新]使用示例
下面大致介绍一下UIRefreshControl的使用1、使用范围如果你装了xcode_4.5_developer_preview,那么在UITableViewController.h文件中你会看到,UITableViewController里面有如下声明,说明UITableViewController已经内置了UIRefreshControl控件[cs转载 2014-01-02 20:21:37 · 1425 阅读 · 1 评论 -
IOS开发之UINavigationBar
简介 UINavigationBar是用于实现管理层级关系内容的组件,直接继承自UIView。通常用在UINavgationController类中,用于管理和显示UINavgationController的subViewController , 同时UINavgationBar也可以单独使用,添加至任何的UIView中。UINavigationBar比较重要的属性为,左侧按钮,中间的标题原创 2013-12-15 20:46:48 · 1161 阅读 · 0 评论 -
IOS开发之UINavigationController详解
UINavigationController是IOS编程中比较常用的一种容器view controller,很多系统的控件(如UIImagePickerViewController)以及很多有名的APP中(如qq,系统相册等)都有用到。说是使用详解,其实我只会介绍几个自认为比较重要或者容易放错的地方进行讲解,下面让我们挨个探探究竟: 首先上一张图(来自苹果官方文档):原创 2013-12-15 20:34:08 · 1619 阅读 · 0 评论 -
UITableView学习笔记
UITableView堪称UIKit里面最复杂的一个控件了,使用起来不算难,但是要用好并不容易。当使用的时候我们必须要考虑到后台数据的设计,tableViewCell的设计和重用以及tableView的效率等问题。下面分9个方面进行介绍:一、UITableView概述 UITableView继承自UIScrollView,可以表现为Plain和Grouped两种风格,分别如下图所示:转载 2013-12-14 10:09:29 · 624 阅读 · 0 评论 -
IOS开发之TableView详解
//-、建立 UITableView DataTable = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)]; [DataTable setDelegate:self]; [DataTable setDataSource:self]; [self.view addSubview:DataTable]; [Dat原创 2013-12-13 23:27:42 · 923 阅读 · 0 评论 -
IOS开发之OC语法简化
NSNumber简化前的写法:NSNumber *value;value = [NSNumber numberWithInt:12345];value = [NSNumber numberWithFloat:123.45f];value = [NSNumber numberWithBool:YES];简化后的写法:NSNumber *value;value = @1翻译 2013-12-12 13:06:50 · 974 阅读 · 0 评论 -
IOS开发之UIScrollView控件详解
首先实现UIScrollViewDelegate协议:[plain] view plaincopy#import @interface Activity01ViewController : UIViewController{ UIScrollView *myscrollview; } @propert原创 2013-12-12 13:00:32 · 774 阅读 · 0 评论 -
IOS开发之UIScrollView与UIPageControl的用法
@interface RootViewController :UIViewControllerUIScrollViewDelegate>{ UIScrollView *_scrollView; NSMutableArray *slideImages; UIPageControl *_page;}@end#import "Root原创 2013-12-12 20:23:51 · 811 阅读 · 0 评论 -
IOS开发之UIControl
UIKit提供了一组控件:UISwitch开关、UIButton按钮、UISegmentedControl分段控件、UISlider滑块、UITextField文本字段控件、UIPageControl分页控件。控件是对UIView派生类的实用增强及补充,并可以直接附着于导航栏、表格单元,甚至更大的对象。这些控件的基类均是UIControl,而UIContro原创 2013-12-11 15:40:16 · 676 阅读 · 0 评论