UIScrollView - UIScrollView 添加 UIButton 时不响应滑动操作
变更记录
序号
录入时间
录入人
备注
1
2016-04-06
Alfred Jiang
-
方案名称UIScrollView - UIScrollView 添加 UIButton 时不响应滑动操作
关键字手势 \ UILabel \ UIView \ 单击手势 \ UIScrollView \ UITableViewCell \ UIButton \ 滑动
需求场景
解决 UIScrollView \ UITableViewCell 添加 UIButton 时不响应滑动操作问题
解决 UIScrollView 中添加 UITapGestureRecognizer 跟 UIButton 点击事件冲突
参考链接
ITEYE - 为UILabel添加点击事件
怎么解决UIScrollView中添加UITapGestureRecognizer跟UIButton点
详细内容UIScrollView \ UITableViewCell 添加 UIButton 时不响应滑动操作问题123456789101112131415//1.添加单击事件...UILabel *labe ...
测试 - 异步函数的单元测试
变更记录
序号
录入时间
录入人
备注
1
2016-04-25
Alfred Jiang
-
方案名称测试 - 异步函数的单元测试
关键字测试 \ 单元测试 \ 异步函数 \ delegate \ 代理 \ block
需求场景
需要对 Block 异步回调进行结果测试时
需要对 Delegate 异步回调进行结果测试时
参考链接
CSDN - iOS中异步函数的单元测试
Stack Overflow - How do I unit test HTTP request and response using NSURLSession in iOS 7.1?
详细内容1. Block 回调类异步测试使用 XCTestExpectation
12345678910111213141516171819202122232425- (void)testDataTask{ XCTestExpectation *expectation = [self expectationWithDescription:@"asynchronous request&quo ...
Xcode - 在 Xcode 里添加和使用 Debug 宏定义
变更记录
序号
录入时间
录入人
备注
1
2016-04-26
Alfred Jiang
-
1
2016-05-05
Alfred Jiang
添加多条宏定义并使用逻辑与或操作
方案名称Xcode - 在 Xcode 里添加和使用 Debug 宏定义
关键字Xcode \ Debug 模式 \ 宏定义
需求场景
需要为工程设置仅在 Debug 模式下有效的代码时
参考链接
Wutiam - #ifdef 中的逻辑与或操作
详细内容添加宏定义并使用举例 : 添加 TARGET_IPAD_DEBUG 为 Debug 模式下特有宏定义
Xcode -> 工程 Build Settings -> All -> Preprocessor Macros -> TARGET_IPAD_DEBUG=1
123#ifdef TARGET_IPAD_DEBUG//...此处代码仅 Debug 模式下有效#endif
添加多条宏定义并使用逻辑与或操作1234567#if (!defined A) && (defined B)// ...
数据库 - 使用 SQLCipher 进行数据库加密存储
变更记录
序号
录入时间
录入人
备注
1
2016-04-23
Alfred Jiang
-
方案名称数据库 - 使用 SQLCipher 进行数据库加密存储
关键字数据库 \ SQLCipher \ 加密
需求场景
需要对存储于数据库中的数据进行加密时
参考链接
CSDN - sqlite 数据库加密(SQLCipher)
CSDN - ios中的SQL数据库文件加密 (使用sqlcipher)
SQLCipher - Adding SQLCipher to Xcode Projects(推荐)
详细内容1. 添加可参考 SQLCipher - Adding SQLCipher to Xcode Projects
2. 使用参考以下示例
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061//// AppDelegate.m// SecureLoginDelegate//// Creat ...
文档 - iOS 人机交互指南
变更记录
序号
录入时间
录入人
备注
1
2016-05-10
Alfred Jiang
-
方案名称文档 - iOS 人机交互指南
关键字文档 \ 人机交互指南 \ 人机界面指南
需求场景
了解 iOS 设计基础
参考链接
Apple documentation - iOS Human Interface Guidelines
腾讯ISUX - [ISUX译]iOS 9人机界面指南(一):UI设计基础
腾讯ISUX - [ISUX译]iOS 9人机界面指南(二):设计策略
腾讯ISUX - [ISUX译]iOS 9人机界面指南(三):iOS 技术 (上)
腾讯ISUX - [ISUX译]iOS 9人机界面指南(三):iOS 技术 (下)
腾讯ISUX - [ISUX译]iOS 9人机界面指南(四):UI元素
腾讯ISUX - [ISUX译]iOS 9人机界面指南(五):图标与图形设计
知乎专栏 - 《iOS 人机界面准则》中文版
详细内容(见参考链接)
效果图(无)
备注
界面设计 - 相关资料收集
语法 - NSString \ NSData \ NSArray \ NSDictionary 格式转换 ( NSArray / NSDictionary <=> NSData <=> NSString )
变更记录
序号
录入时间
录入人
备注
1
2016-05-12
Alfred Jiang
-
方案名称语法 - NSString \ NSData \ NSArray \ NSDictionary 格式转换 ( NSArray / NSDictionary <=> NSData <=> NSString )
关键字语法 \ 数据存储 \ 格式转换 \ NSString \ NSData \ NSArray \ NSDictionary \ NSArray / NSDictionary <=> NSData <=> NSString
需求场景
进行 NSString \ NSData \ NSArray \ NSDictionary 格式转换
参考链接
Sina - NSJSONSerialization-JSON数据与NSDictionary和NSArray之间的转化
详细内容1. NSArray / NSDictionary <= ...
数据存储 - 文件(目录)操作笔记
变更记录
序号
录入时间
录入人
备注
1
2016-05-12
Alfred Jiang
-
方案名称数据存储 - 文件(目录)操作笔记
关键字数据存储 \ 文件操作 \ 文件夹 \ 文件目录操作 \ 笔记
需求场景
进行文件操作
管理数据文件
参考链接
Sina - NSJSONSerialization-JSON数据与NSDictionary和NSArray之间的转化
详细内容1. 创建文件目录1234567891011121314151617181920- (NSString *)dirFullPath:(NSString *)dirName{ NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [path objectAtIndex:0]; NSString *dirPath = [documentsDirectory strin ...
KVO - 使用 KVO 更新 UITableViewCell 显示
变更记录
序号
录入时间
录入人
备注
1
2016-05-04
Alfred Jiang
-
方案名称KVO - 使用 KVO 更新 UITableViewCell 显示
关键字KVO \ UITableViewCell \ 观察属性
需求场景
通过 KVO 实现 UITableViewCell 自更新,避免重复 Reload Cell
参考链接
Stack Overflow - adding KVO to UITableViewCell
Nachbaur - Back to Basics: Using KVO
详细内容1. 在 ObjectiveModel 数据模型中定义观察子属性 KeyPath, 示例表示要观察 statusDescription 子属性1234567//ObjectiveModel.h 中#define KEY_PATH_FOR_STATUS_DESCRIPTION @"statusDescription"...@property (nonatomic, strong) NSString *statusDes ...
打包 - 使用 Xcodebuild 进行命令行打包
变更记录
序号
录入时间
录入人
备注
1
2016-03-20
Alfred Jiang
-
2
2017-04-09
Alfred Jiang
更新 自动编译打包脚本
方案名称打包 - 使用 Xcodebuild 进行命令行打包
关键字打包 \ 工具 \ Xcodebuild \ 命令行打包 \ 自动化打包 \ 自动编译打包脚本
需求场景
为实现打包脚本做准备,简化打包流程
参考链接
使用 Xcodebuild + Jenkins + Apache 做 iOS 持续集成
动手搭建 iOS CI 环境之「了解 xcodebuild 命令」
使用 xcodebuild 从 archive 导出 ipa(推荐)
GitHub - spritefly/ios-builder
简书 - 敲一下enter键,完成iOS的打包工作
简书 - iOS 自动构建命令——xcodebuild
CSDN - iOS编译过程的原理和应用(推荐)
详细内容以工程名为 TestBuildProject.xcodeproj 的工程举例如下
首先,打开终端,进入工程文件 TestB ...
语法 - Objective-C 中的 Meta-class 是什么
变更记录
序号
录入时间
录入人
备注
1
2016-03-22
Alfred Jiang
-
方案名称语法 - Objective-C 中的 Meta-class 是什么
关键字语法 \ Meta-class \ 元类
需求场景
熟悉 Objective-C 类结构
参考链接
伯乐在线 - Objective-C 中的 Meta-class 是什么
Cocoa with Love - What is a meta-class in Objective-C?
详细内容(见参考链接)
效果图(无)
备注(无)