iOS
洛阳如是
iOS开发
展开
-
Mac版Github客户端的配置和使用
先简单介绍一下Git和Github,以下文字来源于维基百科。Git是用于Linux内核开发的版本控制工具。与常用的版本控制工具CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge t原创 2015-11-05 16:57:08 · 828 阅读 · 0 评论 -
[IOS开发]搜索用谓词NSPredicate
Cocoa提供了一个类NSPredicate类,该类主要用于指定过滤器的条件,该对象可以准确的描述所需条件,对每个对象通过谓词进行筛选,判断是否与条件相匹配。谓词表示计算真值或假值的函数。 NSPredicate *predicate; predicate=[NSPredicatepredicateWithFormat:@"name=='Herbie'"];//用pre转载 2015-10-16 10:54:50 · 361 阅读 · 0 评论 -
JsonModel的使用
JSONModel, Mantle这两个开源库都是用来进行封装JSON->Model的, 想想看, 直接向服务器发起一个请求,然后回来后,就是一个Model, 直接使用, 这是一个多么美好的事情。 感谢GitHub的开源精神。那我们开始吧。 先说说这两个的差别。这两个使用的方法其实都差不多, 详细的使用方法请直接GitHub上找, 还是比较简单地。 就我原创 2015-11-19 12:17:50 · 415 阅读 · 0 评论 -
文字+图片的混编(富文本)
在实际项目开发过程中,我们常会遇到一段文字中既要有图片又要有文字,例如我们经常使用的QQ、微信的聊天对话框中,表情和文字共存就是一种典型的图文混排。QQ20150827-1.png可以直接使用Quart2D,直接在Label的draw方法中画图片上去,但是这种方法成本比较高,我们推荐使用text自带的属性来做。要做到图中在文字中插入表情的效果,首先我们得原创 2015-12-26 16:49:17 · 2600 阅读 · 0 评论 -
iOS网络缓存扫盲篇 - 使用两行代码就能完成80%的缓存需求
当我们在谈论缓存的时候,我们在谈论什么?GET网络请求缓存80%的缓存需求:两行代码就可满足控制缓存的有效性文件缓存:借助ETag或Last-Modified判断文件缓存是否有效Last-ModifiedETag总结一般数据类型借助 Last-Modified 与 ETag 进行缓存剩下20%的网络缓存需求转载 2016-02-01 15:12:55 · 596 阅读 · 0 评论 -
iOS8 WebKit库之——WKWebView篇
webkit使用WKWebView来代替IOS的UIWebView和OSX的WebView,并且使用Nitro JavaScript引擎,这意味着所有第三方浏览器运行JavaScript将会跟safari一样快。第一、WKWebView增加的属性和方法类比UIWebView,跟UIWebView的API对比,增加的属性:1、estimatedProgress 加载进度条,在IOS8原创 2016-03-31 21:09:12 · 297 阅读 · 0 评论 -
textfield键盘遮挡事件(目前标准版)
- (void)viewDidLoad { [super viewDidLoad]; self.tf_test.delegate = self; // Do any additional setup after loading the view, typically from a nib.}- (void)viewWillAppear:(BOOL)animated{原创 2016-03-31 21:23:57 · 297 阅读 · 0 评论 -
Apple Pay接入详细教程
本文为投稿文章,作者:YasinApple Pay运行环境:iPhone6以上设备,操作系统最低iOS9.0以上,部分信息设置需要iOS9.2以上。目前还不支持企业证书添加。环境搭建好后可以在模拟器上面运行,xcode7.2.1+iPhone6SP9.2系统下,系统会绑定几种虚拟的银行卡,和几个联系人,方便调试,支付也不会发生真实的付款,真的很方便。准备工作在接入A转载 2016-02-26 14:04:55 · 1460 阅读 · 0 评论 -
Apple Pay准备工作-申请MerchantID及对应证书详细图文教程
Apple Pay准备工作-申请MerchantID及对应证书详细图文教程在接入Apple Pay之前,首先要申请MerchantID及对应证书。准备工作:本地先生成一个CSR文件备用,用于申请证书。教程:MAC下生成CSR(.certSigningRequest)文件申请 MerchantID登录苹果开发者中心,在Identifiers转载 2016-02-26 14:06:36 · 1226 阅读 · 0 评论 -
iOS 开发技术牛人博客
ios牛人博客集锦iOS博客技术dark_gmn 的博客 http://blog.csdn.net/dark_gmn?viewmode=contents(为自己带盐,哈哈) Tel_小超 的博客 http://blog.csdn.net/qq_26544491?viewmode=contentsyouxianming的博客 http://www.cnblogs.com/Y转载 2015-10-16 10:34:17 · 639 阅读 · 0 评论 -
如何设计一个 iOS 控件?(iOS 控件完全解析)
目录(?)[+]代码的等级:可编译、可运行、可测试、可读、可维护、可复用前言一个控件从外在特征来说,主要是封装这几点:交互方式显示样式数据使用对外在特征的封装,能让我们在多种环境下达到 PM 对产品的要求,并且提到代码复用率,使维护工作保持在一个相对较小的范围内;而一个好的控件除了有对外一致的体验之外,还有其内在特征:转载 2015-10-14 17:01:42 · 546 阅读 · 0 评论 -
iOS推送详细步骤
“”阅读器iOS推送最近在研究iOS的推送问题,遇到了一些问题,最终整理了一下,放在这里和大家分享。 APNS的推送机制首先我们看一下苹果官方给出的对iOS推送机制的解释。如下图Provider就是我们自己程序的后台服务器,APNS是Apple Push Notification Service原创 2015-11-06 10:20:46 · 519 阅读 · 0 评论 -
CorePlot1.0:安装
CorePlot升级到1.0了,试用了一下,感觉功能和稳定性上都有了较大提升。所以专门写了几篇 1.0 的试用体验。1. 编译 CorePlot 框架首先需要下载Core Plot框架。你可以在这里找到 1.0版本 Core Plot 的下载链接: http://code.google.com/p/core-plot/downloads下载后文件名为转载 2015-10-09 16:02:38 · 326 阅读 · 0 评论 -
ios9适配网络
在Info.plist中添加NSAppTransportSecurity类型Dictionary。在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES原创 2015-10-22 16:24:15 · 412 阅读 · 0 评论 -
CorePlot1.0:饼图
在Core Plot中,饼图是一类特殊的图形。因为它不需要显示坐标轴。数据不以坐标象限内的点表示,而以椭圆中的扇形面积表示。16.1.1. 饼图的绘制CorePlot用CPTPieChart 对象代表一个饼图。在 CPTGraph 中添加一个饼图很简单,以下代码向 pieChart 中绘制了一个饼图:CPTPieChart*piePlot = [[CPTPieC转载 2015-10-09 16:05:23 · 294 阅读 · 0 评论 -
CorePlot1.0:折线图
我们先来介绍Core Plot中最简单的图形:折线图。折线图也叫散点图,图形由一个个的数据点和点之间的连接线段构成。新建Single View Application。使用前面介绍的4个步骤将 Core Plot 框架加到项目中。打开ViewController.xib,将 View 对象的Identifier改为 CPTGraphHostingView。要使用CorePl转载 2015-10-09 16:03:17 · 462 阅读 · 0 评论 -
CorePlot:用图片定制坐标轴标签
原文:http://stackoverflow.com/questions/6748996/how-to-set-custom-tick-marks-in-core-plot-to-iconsAxis label 可以使用任何 CPTLayer(CALayer 子类)作为标签。用UIImage 作为 CPTLayer 的背景层即可定制轴标签。有许多Core Plot 的使用定制轴标签的例转载 2015-10-09 16:05:57 · 351 阅读 · 0 评论 -
CorePlot1.0:柱状图
Core Plot提供了 CPTBarPlot 类用于柱状图的绘制。在1.0版本中,Core Plot终于提供了水平柱状图(如果你要绘制水平柱状图,[CPTBarPlot tubularBarPlotWithColor: horizontalBars:]方法的第2个参数设置为YES)。本文的示例程序将演示如何绘制柱状图。1、 绘制基本的柱状图这个程序中,数据点是动态加载的,当转载 2015-10-09 16:03:57 · 358 阅读 · 0 评论 -
iOS开发的一些奇谲巧技
iOS开发的22个奇谲巧技转载:http://www.csdn.net/article/2014-12-29/2823348-ios-dev-tricks/2本文作者@叶孤城___,他结合自身的实践开发经验总结出了22个iOS开发的小技巧,以非常欢乐的语调轻松解决开发过程中所遇到的各种苦逼难题,光读着便已忍俊不禁。1. TableView不显示没内容的C转载 2015-09-22 15:30:41 · 478 阅读 · 0 评论 -
IOS开发之实现App消息推送(最新)
好久没有写过博客啦,今天就由本菜鸟给大家做一个简单的IOSApp消息推送教程吧!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多刚开始接触ios的人会很想了解一下。(ps:网上看了一下虽然有很多讲述推送的好教程,我也是看着一步步学会的,但是这些教程的时间都是去年或者更早时期的,对引导新手来说不是很合适)第一部分转载 2015-10-14 16:41:21 · 485 阅读 · 0 评论 -
GTMBase64导入报错解决方法
GTMBase64.m中报错Implicit declaration of function 'CC_MD5' is invalid in C99解决方法:在.m中导入#import 即可2 Implicit conversion loses integer precision: 'unsigned long' to 'CC_LONG' (aka 'unsigned原创 2016-03-14 14:10:48 · 2085 阅读 · 0 评论 -
关于tableView你不知道的那些事
UITableView是工程开发中最经常使用到的UI控件,但是你真的了解它嘛,这里记录几点有用的但你可能并不知道的。*当我们的数据未能显示满一屏幕的时候,UITableView会显示多余的横线,这个时候你如果希望去掉这些横线,你可以加上这句话。self.tableView.tableFooterView = [[UIView alloc]init];*UITableView的分割线默认是开头空15像原创 2016-04-07 16:27:10 · 2722 阅读 · 0 评论 -
关于 block 中的 Weak/Strong Dance 的问题
好多项目中带有 block 的代码都使用一些宏定义,比如@weakify(self): A more elegant solution to weakSelf in Objective-C,而个别 block 其实是不需要使用 weakSelf 的,这些 block 的拥有者并没被 self 在其生存周期始终强引用着,所以没必要用 weakSelf。反而在少数极端情况下(例如异步延时执原创 2016-03-15 13:52:10 · 507 阅读 · 0 评论 -
CBCharacteristic-CBMutableCharacteristic学习笔记
CBCharacteristic学习笔记/*! * @class CBCharacteristic * @discussion * 代表一个服务的特征 */@interface CBCharacteristic : NSObject//表明这个属于哪个service@property(weak, readon翻译 2016-05-06 10:29:35 · 846 阅读 · 0 评论 -
CBService-CBMutableService学习笔记
CBService-CBMutableService学习笔记@interface CBService : NSObject//表明服务属于哪个peripheral,一个peripheral可以有多个服务@property(weak, readonly, nonatomic) CBPeripheral *peripheral;//服翻译 2016-05-06 10:30:10 · 1027 阅读 · 0 评论 -
iOS近场通信(蓝牙开发,WiFi开发)
1 AirDrop (UIActivityViewController类)功能:实现iOS设备间的文件和数据分享。AirDrop使用蓝牙来扫描周围的设备,当两台设备通过蓝牙建立起了连接,考虑到更快速的数据传输,它就会创建点对点的WiFi网络来连接两部iOS 设备。但并不意味着为了使用AirDrop而需要把设备连接至WiFi网络。传输方式:蓝牙、WiFi支持系统:iOS转载 2016-06-06 16:40:35 · 710 阅读 · 0 评论 -
iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
概览iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以不用按键和手写笔直接操作的,这不愧为一项伟大的设计。今天我们就针对iOS的触摸事件(手势操作)、运动事件、远程控制事件等展开学习:iOS事件简介触摸事件手势识别运动事件远程控制事件iOS事件在iOS中事件分为三类:触摸事件:通过触摸、手势进行触发(例如手指点击、缩放)运动事件转载 2016-05-23 11:00:53 · 439 阅读 · 0 评论 -
sunjce iOS des 3des解密加密
#import "AppDelegate.h"#import "GTMBase64.h"#import #import @interface AppDelegate ()@end#define Mykey @"你和后台约定好的key"@implementation AppDelegate- (BOOL)appl原创 2016-03-15 14:28:23 · 609 阅读 · 0 评论 -
PickView选中某一行的字体变化
要求是选中某一行的时候字体变化,代码如下.h@property (assign,nonatomic)NSInteger selectedRow;.m-(void)viewDidLoad{ [super viewDidLoad]; self.timeArray = [[NSArray alloc]initWithObjects:@"0",@"2",@"4",原创 2015-12-04 14:18:55 · 2420 阅读 · 0 评论 -
加速iOS开发的28个第三方库
1: AFNetworking - 网络请求AFNetworking is a delightful networking library for iOS and Mac OS X类似库有 Alamofire2: AsyncDisplayKit - 异步加载UISmooth asynchronous user interfaces for iOS apps类转载 2017-03-01 09:37:59 · 361 阅读 · 0 评论 -
ios数组求和(简单粗暴有效)
相信每个程序员都会遇到求和、平均值、最大最小值等相关的需求,通常的做法就是for循环。在iOS开发中,系统API为我们提供了非常简便的方法,我们来一睹为快。 首先我们定义一个数组:NSArray *array= [NSArray arrayWithObjects:@"2.0",@"2.3",@"3.0",@"4.0",@"10",nil];CGFloat su转载 2017-02-25 16:59:13 · 3393 阅读 · 0 评论 -
iOS 开发一些常用插件和第三方库的整理
一:第三方插件1:基于响应式编程思想的oc地址:https://github.com/ReactiveCocoa/ReactiveCocoa2:hud提示框地址:https://github.com/jdg/MBProgressHUD3:XML/HTML解析地址:https://github.com/topfunky/hpple4:有文字转载 2017-05-03 20:59:19 · 578 阅读 · 0 评论 -
CBATTRequest 学习笔记
CBATTRequest 学习笔记/*! * @class CBATTRequest * @discussion :代表了一个从中央发出的读或者写请求 */@interface CBATTRequest : NSObject// 发送请求的中央@property(readonly, retain, nonatomi翻译 2016-05-06 10:28:55 · 664 阅读 · 0 评论 -
CBPeripheralManager
CBPeripheralManager学习笔记@interface CBPeripheralManager : NSObject//CBPeripheralManager的几种状态typedef NS_ENUM(NSInteger, CBCentralManagerState) {// 初始的时候是未知的(刚刚创建的时候)CBCentralMan翻译 2016-05-06 10:28:17 · 947 阅读 · 0 评论 -
让 UIAlertController 兼容 iOS7
公司项目中用到了 UIAlertController 来实现自定义 actionsheet 文字颜色的需求,而 UIAlertController 只能在 iOS8 及更高版本系统使用,在iOS7下会 crash。老大让我写个组件兼容下 iOS7,于是TBAlertController 诞生了。下面给出的关于 TBAlertController 的代码片段都不是真实源码,只为说明实现的具体原创 2016-03-15 13:54:50 · 1732 阅读 · 0 评论 -
关于 @synchronized,这儿比你想知道的还要多
本文翻译自 Ryan Kaplan 的 More than you want to know about @synchronized因为原文一些内容写的不太准确,我按照我的理解做出了批注和补充。如果你已经使用 Objective-C 编写过任何并发程序,那么想必是见过 @synchronized 这货了。@synchronized 结构所做的事情跟锁(lock)类似:它防止不同的线翻译 2016-03-15 14:01:54 · 288 阅读 · 0 评论 -
Objective-C 引用计数原理
本文所使用的源码为 objc4-647 和 CF-1153.18引用计数如何存储有些对象如果支持使用 TaggedPointer,苹果会直接将其指针值作为引用计数返回;如果当前设备是 64 位环境并且使用 Objective-C 2.0,那么“一些”对象会使用其 isa指针的一部分空间来存储它的引用计数;否则 Runtime 会使用一张散列表来管理引用计数。其实还有一种情况会改变引用计原创 2016-03-15 14:10:00 · 433 阅读 · 0 评论 -
Objective-C Runtime
本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机。主要内容如下:引言简介与Runtime交互Runtime术语消息动态方法解析消息转发健壮的实例变量(Non Fragile ivars)Objective-C Associated ObjectsMethod Swizzling总结引原创 2016-03-15 14:22:23 · 336 阅读 · 0 评论 -
iOS-获取当前时间的年、月、日、时、分、秒
//获取当前时间NSDate *now = [NSDate date];NSLog(@"now date is: %@", now); NSCalendar *calendar = [NSCalendar currentCalendar];NSUInteger unitFlags = NSYearCalendarUnit | NSMont原创 2016-03-15 14:22:55 · 329 阅读 · 0 评论 -
Objective-C中的KVC和KVO
本文讲述了使用Cocoa框架中的KVC和KVO,实现观察者模式KVC键/值编码中的基本调用包括-valueForKey:和-setValue:forKey:。以字符串的形式向对象发送消息,这个字符串是我们关注的属性的关键。valueForKey:首先查找以键-key或-isKey命名的getter方法。如果不存在getter方法(假如我们没有通过@synthesize提供存取方法)原创 2016-03-15 14:37:14 · 427 阅读 · 0 评论