
技术小节
yangkunlll
iOS开发者
展开
-
记录一些常用的第三方库和xcode插件
第三方库是现在的程序员离不开的东西 不光是APP开发 基本上所有的商业项目 都会或多或少的使用到第三方库Github上Star>100的开源库数量如下可以看到JS以绝对的优势排名第一 一定程度上也说明了JS在这几年为什么发展得这么迅速 不会点JS都不好意思说自己是码农 不过现在JS圈的造轮子浪潮也是愈演愈烈了 自己不写个框架都不好意思打招呼OC排名第四 相信这个排名还会上升转载 2015-12-17 10:44:19 · 1146 阅读 · 0 评论 -
UIScrollView 是否滑到底部
判断scrollView有没有滚动到视图的底部,用来判断下拉刷新的时间。等 - (void)scrollViewDidScroll:(UIScrollView *)scrollView1 { CGPoint offset = scrollView1.contentOffset; CGRect bound转载 2014-09-25 15:54:21 · 762 阅读 · 0 评论 -
ERROR: Could not find a valid gem 'cocoapods' (>= 0) in any repository
今天重新安装cocoapods 出现了一点问题。 一。 sudo gem install cocoapods 之后有一个错误: ERROR: Could not find a valid gem 'cocoapods' (>= 0) in any repository 排除错误1.安卓command line tools (xcode6不能直接下载用一下方法) 打开终端,输入原创 2014-09-24 17:58:18 · 18346 阅读 · 2 评论 -
宏定义选择执行的方法
#define Test @“”#ifdef Test //方法#else //别的方法#endif原创 2014-09-24 18:04:26 · 791 阅读 · 0 评论 -
IOS遍历未知对象属性、函数
#import @implementation NSObject (PropertyListing) /* 获取对象的所有属性 */- (NSDictionary *)properties_aps{ NSMutableDictionary *props = [NSMutableDictionarydictiona转载 2014-09-12 03:12:56 · 589 阅读 · 0 评论 -
dyld: Symbol not found: _OBJC_CLASS_
如果你遇见了这个错误原创 2014-09-06 07:35:39 · 2178 阅读 · 0 评论 -
Property's synthesized getter follows Cocoa naming convention for returning
Property's synthesized getter follows Cocoa naming convention for returning.代码中有如上警告。在网上查询后发现,是因为苹果在新的编码,不推荐变量以new、copy等关键字开头。突然响起来之前也有朋友问过类似的问题。特做以记录。也希望大家在以后编原创 2014-09-05 18:02:54 · 394 阅读 · 0 评论 -
IOS 可变参数
@interface MyObject : NSObject { NSMutableArray *_parameters;}- (id)initWithObject : (id)firstObj, ... NS_REQUIRES_NIL_TERMINATION;@end////////////////////////////////////////////////////原创 2013-12-27 16:57:23 · 440 阅读 · 0 评论 -
NSScanner
//判断是否为整形:- (BOOL)isPureInt:(NSString *)string{ NSScanner* scan = [NSScanner scannerWithString:string]; int val; return [scan scanInt:&val] && [scan isAtEnd];}//判断是否为浮点形:- (BOOL原创 2013-12-12 18:04:48 · 584 阅读 · 0 评论 -
反射 dic转换成对象
+(MicroPage*)creatPage:(NSMutableDictionary*)dic{ //反射 对象赋值 MicroPage *m = [[[MicroPage alloc] init] autorelease]; unsigned int outCount; objc_property_t *properties = clas原创 2013-12-05 13:51:52 · 486 阅读 · 0 评论 -
谈谈Objective-C的警告
重视编译警告现在编译器有时候会很吵,而编译器给出的警告对开发者来说是很有用的信息。警告不会阻止继续编译和链接,也不会导致程序不能运行,但是很多时候编译器会先你一步发现问题所在,对于Objective-C来说特别如此。Clang不仅对于明显的错误能够提出警告(比如某方法或者接口未实现),也能对很多潜在可能的问题做出提示(比如方法已经废弃或者有问题的转换),而这些问题在很多时候都可能成为潜在的转载 2014-11-17 11:26:32 · 380 阅读 · 0 评论 -
xcode6中如何添加pch文件
Command+N,打开新建文件窗口:ios->other->PCH file,创建一个pch文件,添加需要引入的头文件名:原创 2014-10-30 15:00:24 · 499 阅读 · 0 评论 -
NSURLErrorDomain错误码
enum{NSURLErrorUnknown = -1,NSURLErrorCancelled = -999,NSURLErrorBadURL = -1000,NSURLErrorTimedOut = -1001,NSURLErrorUnsupportedURL = -1002,NSURLErrorCannotFindHost = -1003,NSURLErrorC原创 2015-07-24 19:01:37 · 5770 阅读 · 0 评论 -
UIView之动画效果的实现方法(合集
http://www.tuicool.com/articles/BjMrQne前言:在开发APP中,我们会经常使用到动画效果。使用动画可以让我们的APP更酷更炫,最重要的是优化用户体验,但取决于动画的质量。像QQ、微信、新浪微博等APP,动画效果就很好了,至少我很喜欢它们的动画,让我使用起来感觉很顺畅,心情很开朗。本文会介绍UIView效果的实现方法,非核心动画。转载 2015-07-28 11:07:27 · 623 阅读 · 0 评论 -
关于IOS9
1. http://www.cocoachina.com/ios/20150703/12392.html本文是投稿文章,作者:ChenYilong(https://github.com/ChenYilong/iOS9AdaptationTips)Demo1_iOS9网络适配_改用更安全的HTTPSiOS9把所有的http请求都改为https了:iOS原创 2015-07-24 18:59:28 · 460 阅读 · 0 评论 -
IOS 2G 3G 4G WIFI
typedef enum { NETWORK_TYPE_NONE= 0, NETWORK_TYPE_WIFI= 1, NETWORK_TYPE_3G= 2, NETWORK_TYPE_2G= 3, NETWORK_TYPE_4G= 4,}NETWORK_TYPE;+ (int)dataNetworkTypeFromStatusB原创 2015-06-12 14:44:59 · 466 阅读 · 0 评论 -
IOS js调OC方法
1, lang="en"> charset="UTF-8"> var test2 =function(){ alert(2); onTest2("aaaa"); } var test3 =function(){ alert(原创 2015-06-04 19:04:38 · 487 阅读 · 0 评论 -
iOS性能优化:Instruments使用实战
最近采用Instruments 来分析整个应用程序的性能.发现很多有意思的点,以及性能优化和一些分析性能消耗的技巧,小结如下。Instruments使用技巧关于Instruments官方有一个很有用的用户使用Guide,当然如果不习惯官方英文可以在这里找到中文本翻译版本PDF参阅.Instruments 确实是一个很强大的工具,用它来收集关于一个或多个系统进程的性能和行为的数据转载 2015-03-10 16:39:42 · 313 阅读 · 0 评论 -
iOS 富文本 AttributedString
之前做项目时遇到一个问题: 使用UITextView显示一段电影的简介,由于字数比较多,所以字体设置的很小,行间距和段间距也很小,一大段文字挤在一起看起来很别扭,想要把行间距调大,结果在XCode中查遍其所有属性才发现,UITextView居然没有调整行间距的接口,于是忍住不心里抱怨了一下下。 但是问题还是要解决的,上网一查才发现,iOS不仅有富文本处理转载 2015-03-10 16:27:54 · 1158 阅读 · 0 评论 -
UIView在gdb或lldb下查看所有子view及层级
感觉在调试的时候很实用[view recursiveDescription]贴一下展示效果:原创 2014-11-24 15:35:36 · 405 阅读 · 0 评论 -
通过崩溃trace来查找问题原因 Application received signal SIGSEGV(null)
这里我们以UMeng捕获的错误信息举例:从友盟中, 我们可能会得到如下信息:Application received signal SIGSEGV(null)( 0 CoreFoundation 0x359348a7 __exceptionPreprocess + 186 1 libobjc.A.dylib翻译 2014-10-20 19:28:51 · 2828 阅读 · 0 评论 -
IOS 常用宏定义
常用宏定义//// MacroDefinition.h// MacroDefinitionDemo//// Created by 新风作浪 on 13-6-9.// Copyright (c) 2013年 SpinningSphere Labs. All rights reserved.//#ifndef MacroDefinition_h#de转载 2013-11-06 19:02:15 · 466 阅读 · 0 评论 -
Xcode 4 missing file
使用Xcode 4时, 文件已经删除,但是会出现missing file错误,这一般是SVN或git造成的,有几种方法可以删除:删除一个文件:1.命令行进入missing file目录,然后运行svn delete 文件名 或 git rm 文件名 批量删除的一个方法,删除.svn文件:在终端中输入cd (有空格),将项目文件夹拖进入,回车输入命令行:rm -rf转载 2013-11-07 15:10:07 · 450 阅读 · 0 评论 -
UIWebView 点击获得坐标
原来我自定义过UITextView,然后将捕获touchesBegan,touchesMoved和touchesEnded的事件后交给父层去处理,这样就可以UITextView上进行手势翻页等处理,今天想要故伎重演在UIWebView上,结果失败了。后来用了一种最最简单的办法实现了。你猜对了,是UITapGestureRecognizer,贴上代码。在UIViewController中,加转载 2013-10-17 21:53:09 · 605 阅读 · 0 评论 -
颜色值转化成UIColor IOS
对NSString 写个类别 方法如下:- (UIColor *)toUIColor { unsigned int c; if ([self characterAtIndex:0] == '#') { [[NSScannerscannerWithString:[selfsubstringFromIndex:1]]原创 2013-07-10 13:55:50 · 504 阅读 · 0 评论 -
MD5加密 IOS
+ (NSString *) md5:(NSString *)str{ const char *cStr = [strUTF8String]; unsignedchar result[CC_MD5_DIGEST_LENGTH]; CC_MD5( cStr, strlen(cStr), result ); return[NSS原创 2013-07-10 12:42:33 · 464 阅读 · 0 评论 -
ios 时间戳
1. 得到时间戳 NSDate *datenow = [NSDatedate]; NSString *timeSp = [NSStringstringWithFormat:@"%ld", (long)[datenowtimeIntervalSince1970]]; NSLog(@"timeSp:%@",timeSp);//时间戳的值2, 时间抽转化成原创 2013-07-09 16:18:27 · 485 阅读 · 0 评论 -
RC4加密
+(NSString*)HloveyRC4:(NSString*)aInput key:(NSString*)aKey{ NSMutableArray *iS = [[NSMutableArray alloc] initWithCapacity:256]; NSMutableArray *iK = [[NSMutableArray alloc] initWithCa原创 2013-07-09 13:39:58 · 571 阅读 · 0 评论 -
加载本地Html
1. NSString *basePath = [[NSBundlemainBundle] bundlePath]; NSString *relPath = [basePathstringByAppendingPathComponent:@"AAAA/index.html"]; NSString *myText = [NSStringstringWit原创 2013-07-09 09:45:35 · 458 阅读 · 0 评论 -
委托添加属性
添加一个float bolderWidth.h 文件- (float)bolderWidth;- (void)setBolderWidth:(float)width;.M文件static NSMutableDictionary *_td =nil;+ (NSMutableDictionary *)_td{ if (_td == nil) {原创 2013-07-09 09:58:10 · 396 阅读 · 0 评论 -
NSDateFormatter 时间格式
G: 公元时代,例如AD公元 yy: 年的后2位 yyyy: 完整年 MM: 月,显示为1-12 MMM: 月,显示为英文月份简写,如 Jan MMMM: 月,显示为英文月份全称,如 Janualy dd: 日,2位数表示,如02 d: 日,1-2位显示,如 2 EEE: 简写星期几,如Sun EEEE: 全转载 2013-07-09 09:32:02 · 458 阅读 · 0 评论 -
ARC 单个文件开启关闭
-fobjc-arc 开启arc -fno-objc-arc关闭arc原创 2013-07-09 09:26:32 · 535 阅读 · 0 评论 -
Provisioning profile '16FDA368-AEB2-4960-A8F2-E86081726C01' can't be found
解决办法: 到你的工程目录,找到.xcodeproj文件 邮件显示包内容,双击打开.pbxproj的文件 。 找到 与16FDA368-AEB2-4960-A8F2-E86081726C01相同的行 删除掉。保存,再回到你的项目里,重新运行原创 2013-07-10 08:36:48 · 836 阅读 · 0 评论 -
UINavigationController Push动画
CATransition *animation = [CATransitionanimation]; [animation setDuration:0.5]; [animation setType:@"cube"]; [animation setSubtype:kCATransitionFromBottom]; [animation setTimingF原创 2013-07-26 11:43:48 · 851 阅读 · 0 评论 -
IOS5 ARC unsafe_unretained等说明
iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存。但是学习还是很有必要的。在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都很熟悉了,在此我也不介绍,网上有很多相关文章。现在我们看看iOS5中新的关键字strong, weak, unsafe_unretained. 可以与以前的关键字对应学习st转载 2013-08-02 13:50:04 · 340 阅读 · 0 评论 -
NSInvocation的使用
在 iOS中可以直接调用 某个对象的消息 方式有2种一种是performSelector:withObject:再一种就是NSInvocation第一种方式比较简单,能完成简单的调用。但是对于>2个的参数或者有返回值的处理,那就需要做些额外工作才能搞定。那么在这种情况下,我们就可以使用NSInvocation来进行这些相对复杂的操作NSInvocation可以处理参数、返回值。会j转载 2013-10-10 07:37:08 · 430 阅读 · 0 评论 -
宏选择定义
// 注释执行#else 不注释执行 #indef//#define HH#ifdef HH #define AAAA @"hello"#else #define AAAA @"how"#endif /* 它的作用是当 HH 已经由# define定义过了。则编译 #define AAAA @"hello" 。 否则编译 #d原创 2013-09-12 17:57:28 · 698 阅读 · 0 评论 -
xcode build文件夹
1 打开xcode,点击右上角的xcode 选择偏好设置(Preferences..)2 选择上面的标题栏的“位置(Locations)”,然后选择“高级(Advanced)”3 将custom 的附复选框内容改为“Relative to workspace”完成上面步骤 在工程文件夹里面就可以看到build 文件夹了。1 打开xcode,点击右上角的xcode原创 2013-09-12 22:13:09 · 1336 阅读 · 0 评论 -
UIWebView 去掉阴影部分
UIScrollView *scroller = [self.WebView.subviews objectAtIndex:0]; //去掉webview 上下只阴影部分 self.WebView .opaque = NO; for (UIView *subView in [scroller subviews]) {原创 2013-09-03 12:56:52 · 450 阅读 · 0 评论 -
iOS上的socket通信
来自会员taonavy的分享:客户端: 导入头文件: #import #import #import #import 1. 创建连接 CFSocketContext sockContext = {0, // 结构体的版本,必须为0 self, // 一个任意指针的数据,可以用在创建时CFSocket对象相关联。这个指针被传递给所有的上下文中定义的转载 2013-09-01 07:39:27 · 475 阅读 · 0 评论