自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

吹来的寒风

新blog :http://neng18.win/

  • 博客(161)
  • 资源 (2)
  • 收藏
  • 关注

转载 iOS OC语言: Block底层实现原理

文/Liwjing(简书作者)原文链接:http://www.jianshu.com/p/e23078c11518著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。先来简单介绍一下BlockBlock是什么?苹果推荐的类型,效率高,在运行中保存代码。用来封装和保存代码,有点像函数,Block可以在任何时候执行。Block和函数的相似性:(1)可以保存代码(2)有

2016-03-16 16:10:27 410

转载 App Store审核指南

本文针对此前版本的《App Store审核指南》进行了更新,并标注了2015年苹果对《App Store审核指南》进行的一些调整。App Store Review Guidelines(英文版)以下是更新后的审核指南:前言感谢您付出宝贵的才华与时间来开发iOS应用程程序。从职业与报酬的角度而言,这对于成千上万的开发员来说一直都是一项值得投入的事业,我们希望帮助您加入

2016-01-27 10:33:07 722

转载 SQLite数据升级数据迁移

做Android应用,不可避免的会与SQLite打交道。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了。 SQLite提供了ALTER TABLE命令,允许用户重命名或添加新的字段到已有表中,但是不能从表中删除字段。并且只能在表的末尾添加字段,比如,为 Subscription添加两个字段:1 ALTER TABLE Sub

2016-01-27 10:05:38 569

原创 SSL延迟计算:为什么HTTPs比HTTP要慢?

据说,Netscape公司当年设计SSL协议的时候,有人提过,将互联网所有链接都变成HTTPs开头的加密链接。这个建议没有得到采纳,原因之一是HTTPs链接比不加密的HTTP链接慢很多。(另一个原因好像是,HTTPs链接默认不能缓存。)自从我知道这个掌故以后,脑袋中就有一个观念:HTTPs链接很慢。但是,它到底有多慢,我并没有一个精确的概念。直到今天我从一篇文章中,学到了测量HTT

2015-11-06 15:54:21 7880

转载 多线程编程4 - GCD

一、简介在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案。GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器。GCD是Grand Central Dispatch的简称,它是基于C语言的。如果使用GCD,完全由系统管理线程,我们不需要编写线程代码。只需定义想要执行的任务,然后添加到适当的调度队列(dispatch

2015-11-06 10:47:29 417

转载 iOS 应用状态恢复

在iOS 中通常会出现程序由于锁屏或者按了Home键,程序进入后台,当程序返回前台的时候,用户希望看到的仍然是之前操作的一些内容。,因而在程序的设计和开发过程中就要去开发者采取某种手段满足用户的这种需求。很欣慰的是Apple已经提供了针对该问题的解决方案,具体的步骤如下:1、需要AppDelegate中实现两个方法:- (BOOL)application:(UIApplicatio

2015-10-14 11:40:05 515

原创 苹果App Store公布最新应用审核标准

1.条款和条件 1.1为App Store开发程序,开发者必须遵守Program License Agreement (PLA)、人机交互指南(HIG)以及开发者和苹果签订的任何其他协议和合同。以下规则和例证旨在帮助开发者的程序能获得App Store的认可,而不是修改或删除任何其他协议中的条款。 2.功能 2.1 崩溃的程序将会被拒绝。 2.2 存在错误的程序将会被拒绝。 2.3 跟开发

2015-09-24 15:33:22 876

转载 Network Link Conditioner

在Xcode4.1中有一个新鲜的小工具叫Network Link Conditioner(网络连接调节器),是一款具有高度可定制性的辅助工具,可以让用户模拟出大量条件下的网络连接和带宽,对Mac和iOS开发者来说这款工具作用十分明显,可以很方便地测试自己程序在不同网络环境中表现如何。在Xcode4.3中,此工具不再随Xcode工具提供,需要单独下载。通过Xcode中的[Xcode]→[Open

2015-09-02 14:10:00 965

转载 CocoaPods pod install/pod update更新慢的问题

最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:pod install --verbose --no-repo-updatepod

2015-07-03 13:30:22 409

转载 resizableImageWithCapInsets认知和对@2x图片的理解

转自:http://my.oschina.net/u/557242/blog/1855351、resizableImageWithCapInsets在很多编程语言中都有resizable image这样的概念,比如android中的NinePatch graphic ,css3中的border image,微软的Nine-Grid Rendering,还有就是iOS中U

2015-06-18 20:40:10 790

原创 iOS-JNAddressBook 获取手机通讯录信息

iOS-JNAddressBook 获取手机通讯录信息

2015-06-17 19:54:07 660

转载 iOS-利用UIScrollView实现展示图片的无限滚动及自动滚动

转自:http://www.cnblogs.com/guoxiao/p/3587015.html?utm_source=tuicool   在很多应用中,都有利用UIScrollView实现图片的无限滚动及自动滚动效果,下面我就跟大家分享下我是如何实现这种效果的。//// GXViewController.m// 自动滚动及无线循环//// Created by 郭晓 on

2015-05-03 13:08:46 574

转载 IOS中定时器NSTimer的开启与关闭

调用一次计时器方法:[cpp] view plaincopymyTimer = [NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(scrollTimer) userInfo:nil repeats:NO];  //不重复,只调用一次。tim

2015-03-30 18:06:02 360

转载 CocoaPods安装和使用教程

开发iOS项目时肯定会用到许多第三方项目,比如说:ASIHttprequest,JSONKit等等,一些类库可能又关联着其他类库,如果超过一定的数量,手动去下载这些类库难免会有一些麻烦,并且还要去配置参数,等到类库更新的时候,我们还得重新下载一份,这些没有技术含量的活有没有办法避免呢?答案是肯定的,今天就学习了一下iOS下面依赖包管理的工具,这个工具的名字是 CocoaPods1、如何下载

2015-03-20 15:19:11 421

转载 使用XCode6打开项目以后再用XCode5出现的问题fatal error: malformed or corrupted AST file: 'Unable to load module

使用不同版本的XCode出现的问题:fatal error: malformed or corrupted AST file: 'Unable to load module "/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache/XYZYIE6ZV0OP/Darwin.pcm": file not found' note:

2015-03-16 09:49:54 461

转载 Info.plist与Prefix.pch修改文件位置遇到的问题及解决方法

如果要更改Info.plist与Prefix.pch文件实际路径,也就是实际文件的位置(不是在工程中的组织路径),需要到Build Settings中修改对应的配置,不然工程就找不到对应的Info.plist与Prefix.pch文件。报错情况:1、Info.plist文件路径错误error: could not read data from '/Users/sf_gxd/De

2015-03-11 19:44:35 521

转载 mac上的xampp出现Access forbidden!

xampp上去运行的时候,发现有问题,没法运行,报以下的错误:Access forbidden!  You don’t have permission to access the requested object. It is either read-protected or not readable by the server.这时可以找到apache的httpd.conf文件,

2015-03-09 23:10:23 3197

原创 15.ios之Quartz2D

1.什么是Quartz2D•Quartz2D是一个二维绘图引擎,同时支持iOS和Mac系统•Quartz 2D能完成的工作 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件2.自定义View图形上下文•图形上下文(Graphics Context):是一个C

2015-03-09 21:36:13 680

原创 ios开发笔记之手势触控

- (void)handleLongPress:(UILongPressGestureRecognizer*)sender { if (sender.state == UIGestureRecognizerStateEnded) { NSLog(@"Long press Ended"); } else { NSLog(@"Long pres

2015-03-04 18:24:36 595

原创 ios开发笔记之TextView

1.不能滚动self.scrollEnabled = NO;2.正常字体[UIFont systemFontOfSize:30.0f]3.加粗字体[UIFont boldSystemFontOfSize:30.0f]4.文本框偏移self.textContainerInset = UIEdgeInsetsMake(TEXTVIEW_TOP_INSET, TEXTVIEW

2015-02-11 13:23:58 786

原创 14.ios之数据存取

iOS应用数据存储的常用方式lXML属性列表(plist)归档lPreference(偏好设置)lNSKeyedArchiver归档(NSCoding)lSQLite3lCoreData应用沙盒l每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其他文件系统隔离。应用必须待在自己的沙盒里,其他应用不能访问该沙盒l应用沙盒的文

2015-01-26 21:30:59 931

原创 13.ios之控制器管理2

什么是Segue•Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue)Segue的属性•每一个Segue对象,都有3个属性 唯一标识@property (nonatomic,readonly) NSString*identifier; 来源控制器

2015-01-26 20:21:23 722

原创 13.ios之控制器管理

掌握•控制器以及view的多种创建方式•UINavigationController的简单使用:添加\移除子控制器•UINavigationBar内容的设置•控制器的生命周期方法如何创建一个控制器控制器常见的创建方式有以下几种通过storyboard创建直接创建MJViewController *mj =

2015-01-22 23:02:03 663

原创 12.ios之程序启动原理

掌握•Info.plist和pch文件的作用 •UIApplication的常见使用 •AppDelegate的代理方法 •UIApplication、AppDelegate、UIWindow、UIViewController的关系 •iOS程序的完整启动过程项目中常见文件Info.plist常见的设置

2015-01-22 12:03:22 792

原创 11.ios之通知机制

通知中心(NSNotificationCenter)•每一个应用程序都有一个通知中心(NSNotificationCenter)实例,专门负责协助不同对象之间的消息通信•任何一个对象都可以向通知中心发布通知(NSNotification),描述自己在做什么。其他感兴趣的对象(Observer)可以申请在某个特定通知发布时(或在某个特定的对象发布通知时)收到这个通知

2015-01-18 16:15:35 1240

原创 10.ios之UITableView

什么是UITableView•在众多移动应用中,能看到各式各样的表格数据在iOS中,要实现表格数据展示,最常用的做法就是使用UITableViewUITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳UITableView的两种样式如何展示数据•UITableView需要一

2015-01-18 15:52:26 777

原创 9.ios之UIScrollView

什么是UIScrollView•移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限••当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容••普通的UIView不具备滚动功能,不能显示过多的内容••UIScrollView是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容•举例:手机上

2015-01-06 21:59:07 736

原创 8.ios之view的封装

1.view的封装•如果一个view内部的子控件比较多,一般会考虑自定义一个view,把它内部子控件的创建屏蔽起来,不让外界关心••外界可以传入对应的模型数据给view,view拿到模型数据后给内部的子控件设置对应的数据2.使用xib封装一个自定义view的步骤1> 新建一个继承UIView的自定义view,假设类名叫做(MJAppView)2> 新建一个MJA

2014-12-27 16:55:53 914

原创 7.ios之xib的使用

1.Xib文件的使用•Xib文件可以用来描述某一块局部的UI界面••Xib文件的加载Ø方法1NSArray*objs = [[NSBundlemainBundle] loadNibNamed:@"MJAppView"owner:nil options:nil];这个方法会创建xib中的所有对象,并且将对象按顺序放到objs数组中(如果xib如

2014-12-27 16:37:47 713

原创 6.ios之字典与模型

1.用模型取代字典的好处•使用字典的坏处Ø一般情况下,设置数据和取出数据都使用“字符串类型的key”,编写这些key时,编译器不会有任何友善提示,需要手敲dict[@"name"] =@"Jack";NSString*name = dict[@"name"];Ø手敲字符串key,key容易写错ØKey如果写错了,编译器不会有任何警告和报错,造成设错数据或者取错数

2014-12-27 16:27:05 717

原创 5.ios之代码创建控件和排版

1.UIView    在View里面添加的控件是x,y是以View的左上角开始算2.UIButton  UIButton 里面包含UIlable 和 UIImageView  设置text时要用setTitle ,不能直接改 titleLabel.text 因为不知道text的状态  设置text字体时titleLabel.font3. NSArray 懒加载

2014-12-26 00:24:56 1066

原创 4.ios之图片动画加载

4.ios之图片动画加载

2014-12-25 20:45:34 771

原创 3.ios之NSBundle和plist的使用

1.NSBundle1> 一个NSBundle代表一个文件夹,利用NSBundle能访问对应的文件夹2> 利用mainBundle就可以访问软件资源包中的任何资源3> 模拟器应用程序的安装路径  /Users/aplle/资源库/Application Support/iPhone Simulator/7.1/Applications4>实现懒加载 只加载一次@proper

2014-12-24 00:03:30 1025

原创 2.ios拖控件

1.IBAction:1> 能保证方法可以连线2> 相当于void-(IBAction)2.IBOutlet:1> 能保证属性可以连线@property (weak,nonatomic) IBOutlet3.常见错误setValue:forUndefinedKey:]: this class is not key value coding

2014-12-19 23:52:00 781

原创 ios之环境配置篇

1: Xcode 6.1   因为官网很卡,可以上csdn下   2.测试ios simulator Xcode - open Developer tool -   ios simulator   能运行的话,恭喜你成功了第一步。   如果不能运行,果断卸了Xcode装其他版本。   Command + K 调出虚拟键盘   后面再说Xcode的配置

2014-12-19 23:21:47 652

转载 设计模式六大原则(5):迪米特法则

定义:一个对象应该对其他对象保持最少的了解。问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。解决方案:尽量降低类与类之间的耦合。         自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。低耦合的优点不言而喻,但是怎么样编程才能做

2014-12-17 19:29:25 359

转载 设计模式六大原则(4):接口隔离原则

定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。举例来说明接口隔离原则:(图1  未遵循接

2014-12-17 19:00:04 373

转载 设计模式六大原则(3):依赖倒置原则

定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接

2014-12-17 17:25:03 358

转载 设计模式六大原则(2):里氏替换原则

肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑。其实原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的。定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型

2014-12-17 16:43:36 360

转载 设计模式六大原则(1):单一职责原则

定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。这样,当修改类T1时,不会使职责P2发生故障风险;同理,当修改T2时,也

2014-12-17 16:19:38 362

c++实训银行管理系统.

c++实训银行管理系统,用控制台写的,用的面向对象,写的比较简陋,但能过考试.

2012-12-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除