- 博客(21)
- 收藏
- 关注
原创 避免滥用单例
单例是整个 Cocoa 中被广泛使用的核心设计模式之一。事实上,苹果开发者库把单例作为 "Cocoa 核心竞争力" 之一。作为一个iOS开发者,我们经常和单例打交道,比如 UIApplication 和 NSFileManager 等等。我们在开源项目、苹果示例代码和 StackOverflow 中见过了无数使用单例的例子。Xcode 甚至有一个默认的 "Dispatch Once" 代码片段
2017-03-27 10:30:00 487
原创 iOS app网络监测,WiFi,4g,无网络,其他
#import @interface judgeNetUtils :NSObject+(void)checkNetWorkStatusWithHudShowInView:(UIView*)hudView block:(void(^)(BOOL networkState))block;
2016-03-04 16:15:54 611
原创 ios 版本更新功能
-(void)getAppVersion{ //或者本地app版本号 version NSString* versionnum = [[[NSBundlemainBundle] infoDictionary]objectForKey:@"CFBundleShortVersionString"]; //bulid NSString* versionb
2016-03-04 16:12:35 412
转载 解决UITableViewCell左侧分割线有空白的问题
ios7中,UITableViewCell左侧会有默认15像素的空白。设置setSeparatorInset:UIEdgeInsetsZero 能将空白去掉。ios8中,setSeparatorInset:UIEdgeInsetsZero 的设置已经不起作用了。 工程中添加如下代码便可解决:self.tableView.separatorStyle = UITabl
2016-03-04 16:06:43 731
原创 提取字符串中的url网址 正则表达式
NSString *urlString=@"电视剧发布的数据发布速度比较快撒比的"; NSError *error; NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"http+:[^\\s]*" options:0 error:&error]
2016-01-18 11:58:25 2020
原创 ios 键盘遮挡输入框解决方法
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. //注册键盘弹起与收起通知 [[NSNotificationCenter defaultCenter] addO
2015-11-20 14:51:05 484
原创 iOS ARC内存泄露的几种情况总结
iOS提供了ARC功能,很大程度上简化了内存管理的代码。但使用ARC并不代表了不会发生内存泄露,使用不当照样会发生内存泄露。下面列举两种内存泄露的情况。1,循环参照A有个属性参照B,B有个属性参照A,如果都是strong参照的话,两个对象都无法释放。这种问题常发生于把delegate声明为strong属性了。例,@interface Samp
2015-10-08 10:23:10 1568
转载 iOS-UITableviewCell的重用机制
TableView的重用机制,为了做到显示和数据分离,IOS tableView的实现并且不是为每个数据项创建一个tableCell。而是只创建屏幕可显示最大个数的cell,然后重复使用这些cell,对cell做单独的显示配置,来达到既不影响显示效果,又能充分节约内容的目的。下面简要分析一下它的实现原理。重用实现分析: 查看UITableView头文件,会找到NSMutableA
2015-10-08 10:21:30 234
转载 集成支付宝 报错:rsa_private read error : private key is NULL
1解决方法:1)在RSADataSigner.m文件中 搜索代码 [result appendString:@"-----BEGIN PRIVATE KEY-----\n"]; 将其改成 [result appendString:@"-----BEGIN RSA PRIVATE KEY-----\n"];2)在RSADataSigner.m文件中 搜索代码 [result append
2015-09-01 13:39:44 550
原创 ios json解析 碰到有转义字符的解决方法
一般情况是需要将 带有转义字符的 用某函数转换为字典 才能进行 解析。。。 就是 key value 模式。代码如下 ://去除转义字符 //"{\"Cmd\":[{\"ReqCmd\":\"S3\",\"Params\":{\"authnum\":\"13815873815\"}} NSMutableString *re
2015-07-22 14:05:21 9377
转载 IOS运行程序长时间误动作时自动退出
概述先讲讲原理。我创建了一个 UIApplication 的子类ELCUIApplication。目的是为了覆盖 sendEvent: 方法。这个方法在每次触摸时都会调用。触摸可能来自于按钮、文本框以至窗口内的任何东西。在 sendEvent 方法中,首先调用 super 的方法(确保事件能被传递到它应该到达的地方),然后重置NSTimer。这个时钟会在 5 分钟(可以修改)以后触
2015-05-25 09:52:55 438
转载 iOS 纯代码适配iPhone6,6+
首先说下让自己的程序支持iPhone6和6+,第一种使用官方提供的launch screen.xib,这个直接看官方文档即可,这里不再多述;第二种方法是和之前iPhone5的类似,比较简单,为iPhone6和6+添加两张特殊的pngiPhone6:命名:[email protected] 分辨率:750*13346+ 命名:Default-414w-736h@3x
2015-05-25 09:29:27 410
原创 关于 去除UITableViewCell复用机制 的几种方法
UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击事件,也可以在UITableViewCell中加入UITextField或者UITextView等子视图,使得可以在cell上进行文字编辑。UITableView中的cell可以有很多,一
2015-05-13 14:47:29 15710
原创 常见iOS系统错误代码含义 英文版
这里大概总结了目前所有常见iOS系统错误代码的意义Iphone Error Collection With SolutionErrors -9815Set exact date**** restart computer. See also Apples KB article.Errors -9814Set exact date**** restart compute
2015-05-13 14:34:22 1988
转载 iOS:iOS8开发 深入理解autolayout(3)
一、概要通过对iOS8界面布局的学习和总结,发现autolayout才是主角,autolayout是iOS6引入的新特性,当时还粗浅的学习了下,可是没有真正应用到项目中。随着iOS设备尺寸逐渐碎片化,纯粹的hard code方式UI布局将会走向死角,而autoresizing方式也有其局限性,所以无论如何autolayout都将成为UI布局的重要方式。前两篇以发烧友心态对iOS
2015-05-13 14:27:57 314
转载 iOS:iOS8开发storyboard中autolayout和size class的使用详解 (2)
一、概要:前一篇初步的描述了size class的概念,那么实际中如何使用呢,下面两个问题是我们一定会遇到的:1、Xcode6中增加了size class,在storyboard中如何使用?2、auto layout该如何与size class配合来进行UI布局?二、了解一件新事物的最好的办法就是实践,让我们揭开那神秘的面纱:例子1、新建一个Single
2015-05-13 14:27:56 340
转载 iOS:iOS8开发之Size Class (1)
一、新特性Size Class介绍随着iOS8系统的发布,一个全新的页面UI布局概念出现,这个新特性将颠覆包括iOS7及之前版本的UI布局方式,这个新特性就是Size Class。Size Class配合Auto Layout可以解决所有(包括iPhone及iPad)iOS设备屏幕尺寸及屏幕旋转时候的UI适配问题 。二、为什么要使用Size Class直到iPh
2015-05-13 14:22:13 352
原创 ios常见的错误与警告
一、常见的错误信息1. error: 'xxx' undeclared(first use in this function) 还没有定义(在此函数中第一次使用)。注:使用某一个变量时,如果使用前还没有定义,会出现该错误。在oc以及c语言中,使用变量前必须先定义它。这个错误经常出现在忘记进行变量定义的情况下。但是,慢慢拿习惯后,这种错误会出现得很少。反而经常
2015-05-13 14:17:26 694
原创 iOS开发中最有用关键的代码合集(2)
退回输入键盘: - (BOOL) textFieldShouldReturn:(id)textField{ [textField resignFirstResponder]; } CGRectCGPoint & CGSizeCGPoint aPoint = CGPointMake(x, y); CGSize aSize = CGSizeMak
2015-05-13 14:12:21 351
原创 iOS开发中最有用关键的代码合集
1.判断邮箱格式是否正确的代码: // 利用正则表达式验证 -( BOOL )isValidateEmail:( NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}" ; NSPredicate *emailTest = [ NSPredi
2015-05-13 14:06:23 318
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人