自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ShengQiang的博客

利用好零碎时间

  • 博客(65)
  • 收藏
  • 关注

原创 OpenGL 参考资料

LearnOpenGL-CN

2016-10-08 14:23:47 577

原创 UITableView Section 不悬停

#pragma mark 重载 UIScrollViewDelegate 方法,让 header section 不悬停- (void)scrollViewDidScroll:(UIScrollView *)scrollView{ CGFloat sectionHeaderHeight = 60; NSLog(@"%lf", scrollView.contentOffset.y);

2016-09-24 19:37:20 580

转载 Ruby之父讲什么是闭包

【摘要】 本段节选自Ruby之父松本行弘作《代码的未来》一书,他举例丰富,讲解的深入浅出,我虽不是Ruby程序员仍豁然开朗、受益匪浅。截取此节与大家共飨。

2016-09-07 15:19:40 870

原创 Calling Ruby From C

Ruby 和 C 交互

2016-09-06 14:47:03 526

原创 Ruby On Rails 安装

macOS 上面安装 Rails 其实就一句话咯。—— 但是坑太多了,一句话是远远不够的。$ gem install railsmacOS 自身已经安装了 Ruby 了,版本应该比较低的,直接按照上面命令安装,会提示 Ruby 版本不够的错误信息:ERROR: Error installing rails: activesupport requires Ruby version >= 2.

2016-09-03 14:07:40 2034

转载 读书的时间哪里来?

有效的应用零散时间,是时间管理中比较重要的技巧,对于看书这部分我做到了,出门的时间随身携带K3,有时间就看几页。给个建议:最少不要在地铁或公交上用手机看书。颠簸中看小说、玩游戏,很容易引起视力功能尚未发育成熟的青少年视疲劳。一般来说,人们使用手机、平板电脑时,眼睛和屏幕的距离在20厘米左右,这样近距离且长时间地盯着屏幕看,容易使睫状肌产生疲劳,变成假性近视.,在使用手持终端时,最好不要离屏幕太近,保

2016-09-01 14:13:01 471

原创 iOS MobAPI 使用姿势

MobAPI , APICloud

2016-08-05 14:20:47 1580

转载 iOS性能优化技巧

通过静态 Analyze 工具,以及运行时 Profile 工具分析性能瓶颈,并进行性能优化。结合本人在开发中遇到的问题,可以从以下几个方面进行性能优化。一、view优化1、不透明的View 设置为opaque。2、根据实际情况重用、延迟加载或预加载View。3、减少subviews数量,定制复杂cell使用drawRect。尽量使用drawRect而不是layoutSubVi

2016-07-04 12:48:23 590

转载 iOS视频开发经验

手机比PC的优势除了便携外,我认为最重要的就是可以快速方便的创作多媒体作品。照片分享,语音输入,视频录制,地理位置。一个成功的手机APP从产品形态上都有这其中的一项或多项,比如instagram,微信。如果把Web2.0的交互体验照搬到手机上就是死路一条。 当智能手机遇上视频就像潘金莲遇上西门庆,各取所需一拍即合,想不发生点事情都难。他们的结晶就是微视频。微视频可以说把手机的视频录制和碎片时间两个

2016-07-04 12:45:57 568

原创 Xcode插件开发-插件模板工程

一、安装 Xcode 插件模板首先需要给 Xcode 安装插件模板,用于创建插件工程。安装模板使用的是 Xcode-Plugin-Template , 我们通过Xcode 包管理工具 Alcatraz 来安装。1、安装 AlcatrazAlcatraz 仅仅支持 Xcode 7+安装在命令行输入如下命令:curl -fsSL https://raw.githubusercontent.com/sup

2016-06-03 15:44:30 767

原创 Xcode插件开发-Xcode Project 详解

前言在 iOS 开发过程中,我们经常会在 Xcode 里面做一些配置,比如添加系统库、第三方库,修改证书配置文件,修改编译属性等等。在这个过程里面,一般大家仅仅只是根据经验来配置这些,并没有比较清晰的认识 Xcode Project 的层次结构。最近由于接触这个比较多,做了一些如下总结。一、Xcode Project 概念ProjectXcode 中的 project 里面包含了所有的源文件、资源文

2016-06-03 15:04:01 1203

原创 音频-Multichannel Mixer Unit 播放

多通道混频播放1、了解 AUGraphAUGraph 是一个 Audio Unit 的容器,它主要用来管理 Audio Unit,用于将多个Audio Unit 连接处理等。AUNode 是在 AUGraph 里面的最小单位,用来关联 Audio Unit。AUGraph 初始化流程:开启 AUGraph:停止 AUGraph:2、理解 Remote I/O UnitRemote I/O Unit

2016-06-03 14:42:51 1499

原创 英语的五种基本句型

一、主语+不及物动词(S+Vi)英语中按动词后可否直接跟宾语,可把动词分成及物动词和不及物动词。及物动词和不及物动词的区别在于所带的宾语不同。不及物动词只能带准宾语(动量宾语,时量宾语和数量宾语)。宾语就是一个动作或动词的承受者。比如说中文的我吃饭,我是主语,吃是谓语,饭就是吃 的承受者,是宾语;我打篮球,篮球是打这个动作的承受者,是宾 语。然而英文中有些动词后面不能接宾语。Everybody la

2016-04-30 16:57:16 3214

原创 音频-AudioComponentDescription 类型设置

一、AudioComponentDescription 是用于描述音频组件的唯一标识和标识的结构。typedef struct AudioComponentDescription { /*一个音频组件的通用的独特的四字节码标识*/ OSType componentType; /*根据componentType设置相应的类型*/ OSType

2016-04-04 17:01:54 5186

转载 音频-音频术语名词解释

A1、AAC   音频格式就像电脑软硬件一样,终归要更新换代的,像磁带不是被CD淘汰了吗?而CD也将要被DVD-Audio所代替。随着时间的推移,MP3越来越不能满足我们的需要了,比如压缩率落后于Ogg、WMA、VQF等格式,音质也不够理想(尤其是低码率下),仅有两个声道……于是FraunhoferIIS与AT&T、索尼、杜比、诺基亚等公司展开合作,共同开发出了被誉为“21世纪的数据压缩方式”的A

2016-04-04 16:19:05 14453

原创 iOS-Sandbox

Every App is an islandiOS 的一个应用对应一个Sandbox,正常情况下是不能够去访问其它文件目录,每一个应用就像一个岛屿。Sandbox模型:文件目录以及其作用Sandbox包含一个Bundle容器,一个Data容器,和一个iCloud容器。1、MyApp.app 目录这是应用程序的程序包目录,包含应用程序和它所有的资源。这个目录没有写入文件的权限。由于应用程序必须经过签名

2016-03-14 13:25:31 659

原创 OC- Method Swizzling

1、Method Swizzling 原理Objective-C 的每一个方法都有一个唯一对应的SEL,而方法是运行时绑定的,利用这些特性,我们可以在运行时调换方法的实现。前面我们说过,IMP 是一个函数指针,通过SEL获得指向方法的入口地址。下面是正常情况下SEL对应IMP函数指针的情况:Method Swizzling 实现的原理就是调换IMP的指向:2、Method Swizzling 应用#

2016-03-12 20:12:56 951

原创 OC- +load方法 和 +initialize方法

1、+load 方法+load 方法是当类或分类被添加到 Objective-C runtime 时被调用的,实现这个方法可以让我们在类加载的时候执行一些类相关的行为。子类的 +load 方法会在它的所有父类的 +load 方法之后执行,而分类的 +load 方法会在它的主类的 +load 方法之后执行。但是不同的类之间的 +load 方法的调用顺序是不确定的。子类 +load 方法等父类先执行完

2016-03-12 16:40:43 1900

原创 OC-消息转发机制

当正常的消息发送走不通的时候,会走下面的消息转发机制:消息转发机制基本分为三个步骤:1、动态方法解析2、备用接受者3、完整转发新建一个HelloClass的类,定义两个方法:@interface HelloClass : NSObject- (void)hello;+ (HelloClass *)hi;@end动态方法解析对象在接收到未知的消息时,首先会调用所属类的类方法+resolveIn

2016-03-12 14:48:32 1888

原创 OC-消息发送机制

在Objective-C中,消息直到运行时才绑定到方法实现上。下面来看看消息发送具体是怎么样的。新建一个helloClass类在 helloClass 类里面定义一个实例方法和一个类方法:新建一个 HelloWorldClass 的类,继承自 HelloClass 类,在里面写一个helloWorldMethod方法:通过clang命令:$ clang -rewrite-legacy-objc He

2016-03-10 22:31:02 1321

原创 OC-方法

方法和上面讲的类和对象也是一样的,它也是一个结构体:/// An opaque type that represents a method in a class definition.typedef struct objc_method *Method;它在objc/runtime.h里面的定义是struct objc_method { SEL method_name

2016-03-10 09:52:09 792

原创 OC-类和对象

Objective-C 对象实际上是一个C里面的结构体指针,这个我们可以通过id类型理解,大家都知道id可以指向任意对象,id本身是一个对象,然后是个指针,所以它指向对象时,不要加“ * ”。下面是id类型的定义:/// id 是一个指向 objc_object 结构体的指针.typedef struct objc_object *id;Objective-C 类实际上也是一个C里面的结构体指针

2016-03-09 21:44:36 501

原创 Mac 安装类似 Ubuntu apt-get命令

brew 1.安装brew:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1 2.使用brew安装软件wget 安装brew install wget  3.使用brew卸载软件安装简单,卸

2015-04-20 20:35:17 1743

转载 Mac 10.10下Python2.7+Django1.7+MySQL5.5环境搭建

1 Mac系统默认自带Python,查看版本:命令行输入:pythonPython 2.7.6 (default, Sep  9 2014, 15:04:36)版本号为2.7.6所以不用安装了 2 安装Django,最新的版本1.7(1)首先使用easy_install安装pip(easy_install是Python的包管理工具,类似Ruby下的gem,pip是升

2015-04-19 23:49:12 733

转载 cocoapods 安装

CocoaPods的下载安装命令是:sudo gem install cocoapods但是,如果你在国内,在终端中里输入这个命令,就算等上半个小时也不一定有反应,原因是cocoapods.org被墙了google一下,发现可以使用淘宝的Ruby镜像来访问cocoapods,依次执行下面的代码:$ gem sources --remove https://rubygems.org

2015-04-07 18:53:22 500

原创 NSUserDefaults 数据存储路径

NSUserDefaults 数据存放在沙盒 Library/Preferences/ 目录下,一个以你包名命名的.plist文件。验证:使用NSUserDefaults设置键值对 [[NSUserDefaults standardUserDefaults] setObject:@"liushengqiang" forKey:@"liushengqiang"]; NSSt

2015-04-01 11:38:56 6417

原创 自定义UITableViewCell上的删除按钮

/*直接拷贝代码使用即可*/#import "ViewController.h"@interface ViewController () @property (nonatomic, strong) UITableView *table;@property (nonatomic, strong) NSMutableArray *array;@end@implementati

2014-12-18 08:54:59 2615

原创 UITableViewCell根据内容自适应高度

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"]; if (cell

2014-12-16 13:18:49 2269

转载 Mantle Introduce

MantleMantle是一个iOS模型框架,它为对象和JSON之间的相互转化提供了一种简便的方法。这在处理网络数据的时候非常有用。下面我们将看一下MTLModel、MTLJSONAdapter以及为什么你将会考虑在下一个项目中使用Mantle。MTLModelMTLModel提供一个简便的方法在NSDictionary对象和自定义对象之间建立映射关系。首先我们来看一个例子。假设从远程

2014-12-15 08:52:29 1556

转载 支付宝在iOS应用上的开发

前奏现在随着移动开发的快速发展,越来越多的应用要求在线支付功能。最近做了一个关于支付宝支付功能的应用,在使用支付宝的过程中,遇到一些不必要的弯路,因此,写了这篇文章总结一下关于ios开发如何使用支付宝。正文首先,我们需要支付宝的功能,应该去支付宝的开发平台,下载sdk以及demo。地址:点击进入下载页面。第一步、将需要的文件,静态库等拖入工程中,这里有:include,libs,U

2014-12-11 10:44:14 984

原创 文件和文件夹的管理

一、创建文件夹// Create a folder at a given path- (void)createFolder:(NSString *)paramPath { NSError *error = nil; if ([self.fileManager createDirectoryAtPath:paramPath withIntermediateDirectories

2014-11-24 08:30:20 870

原创 objectForKey与valueForKey在字典中的区别

从 NSDictionary 取值的时候有两个方法,objectForKey: 和 valueForKey:,这两个方法具体有什么不同呢?先从 NSDictionary 文档中来看这两个方法的定义:objectForKey: returns the value associated with aKey, or nil if no value is associated with aKey.

2014-11-04 21:40:57 1759

原创 iOS代码禁止横屏

- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{ return UIInterfaceOrientationMaskPortrait;}

2014-11-04 08:05:53 2310

原创 plist文件写入Documents目录注意事项

NSDictionary *dict1 = [NSDictionary dictionaryWithObject:@"john1" forKey:@"name1"]; NSString *path1 = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/user1.plist"]; NSMutableDict

2014-11-01 20:36:42 933

原创 按钮上图片加到自定义导航栏变色的问题

这是因为iOS7新特性设置UIImage的渲染模式:UIImage.renderingMode着色(Tint Color)是iOS7界面中的一个重大改变,你可以设置一个UIImage在渲染时是否使用当前视图的Tint Color。UIImage新增了一个只读属性:renderingMode,对应的还有一个新增方 法:imageWithRenderingMode:,它使用UIImageR

2014-10-21 21:32:57 1955

转载 使用面向 iOS 的本机插件扩展 PhoneGap

原文地址:http://www.adobe.com/cn/devnet/html5/articles/extending-phonegap-with-native-plugins-for-ios.htmlGitHub demo:https://github.com/phonegap/phonegap-plugins/blob/master/iOS/PickerView/PickerView.m

2014-10-16 11:23:57 1028

原创 UIScrollView加到导航控制器注意加一句话

在滚动视图加到导航控制器上得那个界面加一句:   // 自动调节滚动视图    self.automaticallyAdjustsScrollViewInsets = NO;

2014-10-11 08:44:02 549

原创 Xcode6高德地图定位注意事项

再配置后工程后做如下几件事:一、在

2014-10-10 21:09:26 2272

原创 iOS开发者账号申请总结

一、账号分类个人账号:公司账号:企业账号:

2014-10-03 20:41:30 812

转载 shell 编程的一些文档地址

https://developer.apple.com/library/mac/documentation/OpenSource/Conceptual/ShellScripting/Introduction/Introduction.html

2014-09-15 14:31:38 576

空空如也

空空如也

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

TA关注的人

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