- 博客(16)
- 收藏
- 关注
原创 @synchronized的使用方法
@synchronized 的作用是创建一个互斥锁,保证此时没有其它线程对self对象进行修改。这个是objective-c的一个锁定令牌,防止self对象在同一时间内被其它线程访问,起到线程的保护作用。 一般在公用变量的时候使用,如单例模式或者操作类的static变量中使用。实例:@synchronized(self){ static Respatch *rech
2014-12-09 20:15:28 611
原创 SDWebImage的原理以及使用流程
SDWebImage这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。 SDWebImage 支持异步的图片下载+缓存,提供了 UIImageView+WebCacha 的 category,方便使用。SDWebImage加载图片的流程:1. 入口 setImageWithURL:placeho
2014-12-06 14:08:36 781
转载 AFNetwork 作用和用法详解
AFNetworking是一个轻量级的iOS网络通信类库。它建立在NSURLConnection和NSOperation等类库的基础上,让很多网络通信功能的实现变得十分简单。它支持HTTP请求和基于REST的网络服务(包括GET、POST、 PUT、DELETE等)。支持ARC。Github地址:https://github.com/AFNetworking/AFNetworkin
2014-12-06 11:45:45 611 1
原创 多线程总结(代码)
(1)[NSThread detachNewThreadSelector:@selector(createTableview) toTarget:self withObject:nil];(2)[self performSelectorInBackground:@selector(createTableview) withObject:nil];(3)
2014-12-06 09:17:11 449
原创 OS 声明属性关键字(atomic,nonatomic)
atomic: 原子操作(原子性是指事务的一个完整操作,操作成功就提交,反之就回滚. 原子操作就是指具有原子性的操作)在objective-c 属性设置里面 默认的就是atomic ,意思就是 setter /getter函数是一个原子操作,如果多线程同时调用setter时,不会出现某一个线程执行完setter所有语句之前,另一个线程就开始执行setter,相当于 函数头尾加了锁 .
2014-11-29 15:15:34 813
原创 AVPlayer的使用
我自己用的音乐播放器是自带的AVPlayer导入头文件#import 远程控制事件接收与处理- (void)viewWillAppear:(BOOL)animated{[super viewWillAppear:animated];[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];[sel
2014-11-22 22:37:48 920
原创 UISlider样式修改
_slider = [[UISlideralloc]initWithFrame:CGRectMake(30 *MyWidth / 320,415 * MyHeight /568, 260 * MyWidth / 320, 30 * MyHeight / 568)]; _slider.backgroundColor = [UIColorclearColo
2014-11-22 22:17:55 839
原创 对多个自定义cell同时进行相同操作
在cell的点击事件里面写以下语句for(int i =0; i 12; i++) { //自定义indexPath来设置cell的样式 NSIndexPath *myIndexPath = [NSIndexPathindexPathForRow:i inSection:0];
2014-11-12 17:20:35 601
原创 iOS上线app基本素材和资料
做iOS好久了,今天整理一下APP所需要的基本素材和资料,网上很多但是要么太旧,要么就是不太全。这些最好在项目启动的时候就准备好。忆往昔,第一次上线的前夕,准备不充分导致的缺这个少那个的,很坑也很郁闷啊!呵呵,人跳的坑多了,以后的路走着才会平坦。 PS:这个整理需要的编译器是XCode4.6.x的,XCode5有自带的模板提示,很方便就不整理了(XCode越做越傻瓜式啦)。Ico
2014-11-12 10:52:01 1278
原创 UITableView可编辑状态常用操作
1、标记行这里讲的标记行指的是单击此行,可以实现在此行右边出现一个勾,如下图所示:为了实现标记功能,在ViewController.m中@end之前添加代码:#pragma mark - #pragma mark Table Delegate Methods - (void)tableView:(UITableView *)table
2014-11-11 20:02:37 469
转载 SQL内联、外联的简单理解
(源自:http://blog.csdn.net/kkk9127/article/details/1487686)--查询分析器中执行:--建表table1,table2:create table table1(id int,name varchar(10))create table table2(id int,score int)insert into table
2014-11-11 14:45:24 515
原创 CocoaPods的使用(以AFNetworking为例)
AFNetworking类库在GitHub地址是:https://github.com/AFNetworking/AFNetworking为了确定AFNetworking是否支持CocoaPods,可以用CocoaPods的搜索功能验证一下。在终端中输入:$ pod search AFNetworking过几秒钟之后,你会在终端中看到关于AFNetworking类库的一些信息。比如:
2014-11-11 14:19:24 1467
原创 沙盒相关
沙盒含有4个文件夹:Documents, Library,tmp以及应用的App文件。documents: 只有用户生成的文件、其他数据及其他程序不能重新创建的文件,并将通过iCloud自动备份。library-caches: 可以重新下载或者重新生成的数据。举个例子,比如杂志、新闻、地图应用使用的数据库缓存文件和可下载内容应该保存到这个文件夹。library-preferences:
2014-11-11 09:23:47 632
转载 如何快速正确的安装 Ruby, Rails 运行环境
对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境。次安装方法同样适用于产品环境!系统需求首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用:Mac OS X 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, A
2014-11-11 09:16:40 574
原创 选择排序
选择排序:每一趟在n-i+1(i=1,2,...,n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。一、简单选择排序 一趟选择排序操作: 通过n-i次关键字间的比较,从n-i+1个记录中选出关键字最小的记录,并和第i(1 对L[1...n]中记录进行简单选择排序的算法为:令i从1至
2014-09-12 19:44:00 522
转载 IOS求职之OC面试题
1、Objective-C的类可以多重继承么?可以采用多个协议么?答:不可以多重继承,可以采用多个协议。2、#import和#include的区别是什么?#import#import能避免头文件被重复包含的问题:1) 一般来说,导入objective c的头文件时用#import,包含c/c++头文件时用#include。使用include要注意重复引用的问题:class
2014-09-11 20:35:47 491
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人