自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CSND_GO

PYTHON/IOS

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

转载 ReactiveCocoa 学习资料2

#RAC中文资源列表QQ讨论群:430033580 欢迎进群一起讨论。##入门ReactiveCocoa 和 MVVM 入门ReactiveCocoa入门教程:第一部分ReactiveCocoa入门教程:第二部分说说ReactiveCocoa 2iOS 7最佳实践:一个天气App案例Reactive Cocoa Tutorial [0

2017-06-24 14:39:12 683

转载 学习Reactive Cocoa资料

ReactiveCocoa GitHub文档 Documentation对应找到的几篇中文翻译READMEFramework OverviewBasic OperatorsMemory ManagementRaywenderlich上的文章质量高、适合初学者学习。ReactiveCocoa Tutorial – The Definitive Introducti

2017-06-24 14:36:20 884

原创 IOS10配置

在iOS10中,如果你的App想要访问用户的相机、相册、麦克风、通讯录等等权限,都需要进行相关的配置,不然会直接crash。需要在info.plist中添加App需要的一些设备权限。NSBluetoothPeripheralUsageDescription访问蓝牙NSCalendarsUsageDescription访问日历NSCameraUsageDescri

2017-06-01 15:26:34 627

转载 IOS管理文件和目录

1、常见的NSFileManager文件方法-(NSData *)contentsAtPath:path  //从一个文件读取数据-(BOOL)createFileAtPath: path contents:(NSData *)data attributes:attr  //向一个文件写入数据-(BOOL)removeItemAtPath:path error:err  /

2017-05-10 15:31:23 555

转载 学习途径IOS

iOS检测版本信息 看这个就够了iOS利用iTunesLookup检查更新Jay's smile 博客jay's email 的博客Realm 核心数据库引擎探秘github Realm 下载地址移动端数据库新王者:realmRealm 核心数据库引擎探秘iOS移动端架构的那些事iOS移动端架构的那些事tony 大神的博客

2017-05-09 17:11:27 753

转载 iOS开发笔记--什么时候调用layoutSubviews

今天在写程序时候遇见layoutSubviews触发时候引起的问题。特来总结一下什么时候会触发layoutSubviews:layoutSubviews在以下情况下会被调用: 1、init初始化不会触发layoutSubviews 2、addSubview会触发layoutSubviews 3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置

2017-03-27 11:44:46 1003

转载 void指针(void *的用法)

指针有两个属性:指向变量/对象的地址和长度 但是指针只存储地址,长度则取决于指针的类型 编译器根据指针的类型从指针指向的地址向后寻址 指针类型不同则寻址范围也不同,比如: int*从指定地址向后寻找4字节作为变量的存储单元 double*从指定地址向后寻找8字节作为变量的存储单元 1.void指针是一种特别的指针    void *vp    //说它特别是因为

2017-03-27 09:35:11 1587

转载 iOS NSInvocation应用与理解

IOS中有一个类型是SEL,它的作用很相似与函数指针,通过performSelector:withObject:函数可以直接调用这个消息。但是perform相关的这些函数,有一个局限性,其参数数量不能超过2个,否则要做很麻烦的处理,与之相对,NSInvocation也是一种消息调用的方法,并且它的参数没有限制。这两种直接调用对象消息的方法,在IOS4.0之后,大多被block结构所取代,只有在很老

2017-03-24 17:25:49 357

原创 使用gitHup托管自己的代码

》1.注册一个github账号》2.配置SSH Keys, 只要配置了SSH Keys就可以和github无缝衔接》点击昵称来到个人主页》 点击主页中的设置(setting)》 点击SSH Keys》点击 generating SSH keys》1.检查本地的ssh keys在“用户目录”下 ls -al ~/.ssh2.如果文件夹不存在需要手动创建

2017-03-14 13:50:11 624

转载 3种延迟操作 选择

我们常常会延迟某件任务的执行,或者让某件任务周期性的执行。然后也会在某些时候需要取消掉之前延迟执行的任务。延迟操作的方案一般有三种:1.NSObject的方法:gcdTimer2.使用NSTimer的方法:gcdTimer3.使用GCD的方法:gcdTimer一般情况下,我们选择使用GCD的dispatch_a

2017-03-11 21:13:55 644

转载 2017年苹果审核十大常见被拒原因(内附过审指南)

2017年伊始,苹果并没有因为新年的气氛而对CP们“网开一面”。频繁锁榜、调整排名规则以及关键词覆盖算法……不断抛出的大动作,让CP们叫苦不迭。且从1月初开始,苹果还进一步加强了对应用的审核力度,导致跳坑CP以及被拒应用暴增。近日,小七和CP们针对应用审核问题进行了一番交流。通过调查结果统计发现,被拒原因中,标题、ipv6、测试账户、应用内购、彩票等纷纷榜上有名。一.十大常见被

2017-03-08 11:05:52 10824 1

原创 tabbar问题集合

一,在TabBarItem设计的时候不需要title只要image的时候,如何将image居中显示,做法如下:    tabBarItem.imageInsets = UIEdgeInsetsMake(5, 0, -5, 0);      特别要注意的是:       top和bottom要设置成相反数,不然image的大小会一直改变二,如果你只是单纯的想改变图片的

2017-03-08 10:42:59 401

原创 如果tableview是group的时候,去掉头部的留白

UIView *view = [[UIViewalloc]initWithFrame:CGRectMake(0,0, self.view.frame.size.width,0.001)];    view.backgroundColor = [UIColorredColor];    self.mytableview.tableHeaderView = view

2017-03-06 14:00:31 2457

转载 使用CocoaPod出现-bash: pod: command not found 解决办法

今天在使用CocoaPod为项目添加第三方类库时,出现了-bash: pod: command not found的问题。没办法啦,网上各种找啊,找啊!按照网上说的方法使用命令:sudo gem install -n /usr/local/bin cocoapods。看到了让你高兴的系统提示:本以为这样把问题解决了,赶紧用 pod --version 试试看。结果让

2017-03-01 10:19:33 1351

转载 RunTime

前言runtime的资料网上有很多了,部分有些晦涩难懂,我通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主,我觉得用到印象才是最深刻的,并且最后两个demo也是MJExtension的实现原理,面试的时候也可以多扯点。另外runtime的知识还有很多,想要了解更多可以看我翻译的官方文档(有点枯燥),本文的demo下载地址什么是runtime?runtim

2017-02-27 17:07:41 365

原创 数据存储方式IOS---归档与解档

一:归档与解档(1::::::)归档1:保存数据到模型类,如下:- (instancetype)initWithDic:(NSDictionary*)dic{    self = [superinit];    if (self) {        //                //转模型        for

2017-02-27 15:29:50 552

转载 NSCache

NSCache是系统提供的一种类似于集合(NSMutableDictionary)的缓存,它与集合的不同如下:1. NSCache具有自动删除的功能,以减少系统占用的内存;2. NSCache是线程安全的,不需要加线程锁;3. 键对象不会像 NSMutableDictionary 中那样被复制。(键不需要实现 NSCopying 协议)。NSCache的属性以及方法

2017-02-27 10:28:20 418

转载 关于头文件中的 static inline函数

内联函数有些类似于宏。内联函数的代码会被直接嵌入在它被调用的地方,调用几次就嵌入几次,没有使用call指令。这样省去了函数调用时的一些额外开销,比如保存和恢复函数返回地址等,可以加快速度。不过调用次数多的话,会使可执行文件变大,这样会降低速度。相比起宏来说,内核开发者一般更喜欢使用内联函数。因为内联函数没有长度限制,格式限制。编译器还可以检查函数调用方式,以防止其被误用。static inli

2017-02-27 10:16:17 2436

原创 既然设置了ARC,为什么还要使用@autoreleasepool

用@autoreleasepool是有用的。正常情况下,你创建的变量会在超出其作用域的时候被释放掉。而如果你的函数写的很长,在你函数运行过程中出现很多中间变量,占据了大量的内存,怎么办?用@autoreleasepool。在@autoreleasepool中创建的变量,会在@autoreleasepool结束的时候执行一次release,进行释放。其实@autoreleasepoo

2017-02-24 17:40:54 1186 1

转载 NSOperation

2016年03月29日10:42:36更新感谢@皮特尔 的提醒在iOS开发中,谈到多线程,大家第一时间想到的一定是GCD。GCD固然是一套强大的多线程解决方案,能够解决绝大多数的多线程问题,但是他易于上手难于精通且到处是坑的特点也注定了想熟练使用它有一定的难度。而且很多人嘴上天天挂着GCD,实际上对它的实际应用也不甚了解。再者说,在现在的主流开发模式下,能用到多线程的绝大多

2017-02-24 16:08:41 320

原创 __block 与__weak

1.__block不管是ARC还是MRC模式下都可以使用,可以修饰对象,还可以修饰基本数据类型。 2.__weak只能在ARC模式下使用,也只能修饰对象(NSString),不能修饰基本数据类型(int)。 3.__block对象可以在block中被重新赋值,__weak不可以。 4.__block对象在ARC下可能会导致循环引用,非ARC下会避免循环引用,__weak只在ARC下使用

2017-02-24 14:58:52 348

原创 NSMutableSet 与NSMutableArray

我们常常使用NSMutableSet与NSMutableArray来保存一些信息,但是有些细节经常的忘记,今天就随手记录下来:NSMutableSet是一个集合,它有几个特点:1、没有顺序,所有元素并非按照加入顺序排列2、重复元素只会添加一个,因此不用担心里面的元素有重复此处可以做一个测试,[plain] view plain copy

2017-02-24 14:20:18 725

原创 NS_ENUM和NS_OPTIONS

下面来简单的解释一下OC里枚举的两种类型.NS_ENUM和NS_OPTIONS本质上是一样的都是枚举.我举个例子. typedef NS_ENUM(NSInteger, UIViewAnimationTransition) { UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFromLeft,

2017-02-24 14:12:59 336

转载 tableView的性能优化

现在市场上的iOS应用程序界面中使用最多的UI控件是什么? 答案肯定是UITableView,几乎每一款App都有很多的界面是由UITableView实现的,所以为了做出一款优秀的App,让用户有更好的体验效果,如何做好tableView的优化将是很重要的一环.>1. 要保证滚动tableView时,让用户有良好的体验,需要确保刷新帧率应该在 50+/s 才可以!(instrument中Cor

2017-02-15 14:59:18 398

原创 MVVM解析

开篇MVC Model-View-Controller是一个用来组织代码的权威范式。Apple甚至是这么说的。在MVC下,所有的对象被归类为一个model,一个view,或一个controller。Model持有数据,View显示与用户交互的界面,而View Controller调解Model和View之间的交互。 MVVM MVVM的出现主要是为了解决在开发过程中Controller越来

2017-02-15 14:22:12 362

转载 tableViewCell中添加webView,cell自适应webView高度,解决死循环的简单办法

不管是使用代理还是使用通知传递高度的值,要改边tableviewcell的高度,都需要刷新表,但是这个表刷新,>又要导致webview代理方法的运行,这样形成一个死循环在cell.m文件里面这个方法是在webview请求成功的时候走的,(如果该方法不走,说明请求不成功)在此方法中获取webview的内容高度- (void)webViewDidFinishLoad:(UIWebV

2017-02-15 13:29:46 1187

转载 iOS 状态栏颜色更改

状态栏的字体为黑色:UIStatusBarStyleDefault状态栏的字体为白色:UIStatusBarStyleLightContent一、在info.plist中,将View controller-based status bar appearance设为NO状态栏字体的颜色只由下面的属性设定,默认为白色:// default is UIStatusBarStyleDefa

2017-02-10 09:26:05 244

原创 Masonry

http://www.cocoachina.com/ios/20170109/18538.html              Masonry布局讲解

2017-02-06 13:48:39 231

原创 BLOCK循环引用

循环引用的原因众所周知,ARC下用block会产生循环引用的问题,造成泄露的原因是啥呢?最简单的例子,如下面代码:123[self.teacher requestData:^(NSData *data) {    self.name = @"case";}];此种

2017-02-06 10:51:46 348

转载 修改titleView的尺寸

自定义NavigationBar功能需求在NavigationBar上添加搜索框,并对其位置提出了要求,系统中自带的TitleView不能满足,因此查阅了资料,重写了TitleView  TitleView.h文件,重写TitleView继承UIView#import @interface TitleView : UIView@end123456TitleVi

2017-01-05 14:15:56 4409

原创 获取控件的key

unsigned int count =0;    Ivar *ivarList = class_copyIvarList([UIAlertAction class], &count);    for (int i =0; i        Ivar ivar = ivarList[i];        printf(" 看看:%s\n",iva

2016-12-22 10:49:14 594

转载 tableview的plain与group区别

当tableview style设置为ground时,每个section的header会跟随tableview一起上下滑动;当style设置为plain时,每个section的header会悬浮在屏幕最上面,直到下一个section的header划过来,把当前的替换掉。现在的问题是,可以在style为plain时,让header也跟随tableview一起上下滚动吗,而不停在屏幕最上的部分。

2016-12-16 13:52:25 2073

原创 No matching provisioning profile found: Your build settings specify a provisioning profile with the

在用真机调试时出现“No matching provisioning profile found: Your build settings specify a provisioning profile with the UUID “4841b920-b4a7-440e-8c30-b745aa86ec1c”, however, no such provisioning profile was f

2016-12-05 13:16:31 443

原创 计算存储 并清除

1.首先,一般我们项目中的缓存一般分为2大块,一个是自己缓存的一些数据;还有一个就是我们使用的SDWebImage这个第三方库给我们自动缓存的图片文件缓存了**怎么计算缓存大小(主要是利用系统提供的NSFileManager类来实现)$1.单个文件大小的计算-(long long)fileSizeAtPath:(NSString *)path{ NSFileManager *fileManager

2016-11-04 14:44:36 332

转载 ios怎么在cell上添加倒计时

在一个UITableView中,有多条数据,可能每一个cell对应的剩余时间不一样,所以,如何实现不同的cell中倒计时的实现?之前,考虑到需要单独为每一个cell中开启一个定时器,来监控对应cell的数据更新,但是很快发现这种方法行不通,因为不知道具体有多少条数据,这些数据都是动态从服务器获取的。所以,想到在请求最新的数据时,开启一个定时器,根据该定时器,分别对所有的需要进行倒计时显示的cell

2016-11-02 11:20:42 1303

转载 启动页设置 iOS

今天自己做的小作品准备提交,就差一个启动页,各种百度,各种搜,结果还好最后终于出来了,和大家分享一下,这个过程中遇到的各种小问题。(注XCode版本为7.2)1.启动页一般都是图片,因为苹果有4,4S,5,5S,6,6S可能以后还会有其他的型号,所以要考虑到屏幕的适配,还有系统的适配(有些用户的系统版本不支持一些技术,比如LaunchScreen.storyboard),也就是图片的大小,

2016-09-28 12:50:56 320

转载 Xcode插件管理工具Alcatraz,常用插件介绍 -iOS

AlcatrazAlcatraz 工具可以在Xcode下安装管理插件,官网 - Alcatraz命令行安装curl -fsSL https://raw.githubusercontent.com/supermarin/Alcatraz/deploy/Scripts/install.sh | sh11安装完成重启Xcode之后,就会在 Window 选项下看到 Packa

2016-09-19 16:02:47 807

转载 iOS开发之APP上架要填写什么?有什么要注意?

好不容易把APP开发完成,那我们上架的时候要填写什么?注意些什么?(关于申请上架帐号神马的,请参阅个人之前的文章)1、国内发布APP,名字肯定是中文。那么在项目info文件里边,把Bundle display name 填写一个中文名字,Localization native development regior 选择中国。如果刚才提到的两个都没有,自己手动添加即可。2

2016-09-18 16:51:22 637

转载 将且仅将UILabel上的所有数字变色指定的字体颜色

先提出一个场景,一个UILabel上面有各种数字字符中文字符以及字母等,现在我们想将其中的数字找出来并且变为和其他字符不同的颜色。这里提出一个解决方法,通过for循环来截取一个一个字符,判断其是不是0-9的数字,如果是就设置他的字体属性,我们使用了 NSMutableAttributedString实现富文本(带属性的字符串)。

2016-09-15 09:28:52 363

转载 [nsurl urlwithString:] 返回结果为nil

今天在使用URLWithString拼接NSURL的时候出现了nil:[objc] view plain copy print?NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@?%@",host_url,baseurl,postURL]];  

2016-08-31 11:18:40 3137

空空如也

空空如也

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

TA关注的人

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