自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 字符串对象(NSStrinng)

NSMutableArray部分能容exchangeObjectAtIndex: withObjectAtIndex: 交换元素位置containsObject: 判断数组是否包含某元素subarrayWithRange:截取范围内的元素数组方法-count; 元素个数-firstObject; 返回第一个-laserObject; 返回最后一个a...

2018-03-27 14:51:36 253

原创 枚举

枚举使用typedef NS_ENUM 建议书写枚举模仿苹果——在列出枚举内容的同时绑定了枚举数据类型NSUInteger,这样带来的好处是增强的类型检查和更好的代码可读性,示例: * 普通模式: 不推荐typedef enum : NSUInteger { MyMsyLoadTypeFirst = 0, MyMsyLoadTypeTop, M...

2018-03-27 14:50:53 200

原创 Block 定义

Block 定义block 的循环引用问题warning 如果block (block只要是copy的就会在堆中) 在堆中, block引用外界的对象, 会导致循环引用typeof可以获取括号中传递的值的真实类型typeof(10) a = 10; == int a = 10;如果是用__weak修饰, 当对象销毁之后会自动将变量的值设置为nil...

2018-03-27 14:50:32 413

原创 self = [super init] 为什么要调用

初始化方法的标准结构是这样子的:- (instancetype)init{ self = [super init]; // call the designated initializer if (self) { // Custom initialization } return self;}我们主要来看看,这一句: s...

2018-03-27 14:50:09 491

转载 禅与 Objective-C 编程艺术 (Zen and the Art of the Objective-C Craftsmanship 中文翻译)

禅与 Objective-C 编程艺术 (Zen and the Art of the Objective-C Craftsmanship 中文翻译)原文 https://github.com/objc-zen/objc-zen-bookGitbook 链接(包含 PDF, mobi, epub 格式): http://yourtion.gitbooks.io/objc-zen-b...

2018-03-27 14:49:45 300

原创 const

const修饰位置不同,代表什么?1.const NSString *HSCoder = @"汉斯哈哈哈";2.NSString const *HSCoder = @"汉斯哈哈哈";3.NSString * const HSCoder = @"汉斯哈哈哈";1.const NSString *HSCoder = @"汉斯哈哈哈";"*HSCoder"不能被修改, "HSCo.

2018-03-27 14:49:06 163

原创 iOS 富文本

1、iOS 富文本1. NSFontAttributeName 设置字体属性,默认值:字体:Helvetica(Neue) 字号:12 2. NSForegroundColorAttributeName 设置字体颜色,取值为 UIColor对象,默认值为黑色 3. NSBackgroundColorAttributeName ...

2018-03-27 14:48:43 347

原创 归档和解档.沙盒路径

一、数据归档 解档特点“归档”是一种可以把任何对象,直接保存为文件的方式。(其中包括”归档”与”反归档(读档)”) * 使用前提 必须是实现协议 ,通过”归档”的方式来存储,对象必须遵守NSCoding协议,也就意味着通过”归档”的方式能 将任何遵守了NSCoding协议的”对象”存储到文件中 (对象要是使用归档 解档 要遵守 NSCoding 协议)归档、解档 ...

2018-03-27 14:48:24 203

原创 归档和解档、沙盒路径

一、数据归档 解档特点“归档”是一种可以把任何对象,直接保存为文件的方式。(其中包括”归档”与”反归档(读档)”) * 使用前提 必须是实现协议 ,通过”归档”的方式来存储,对象必须遵守NSCoding协议,也就意味着通过”归档”的方式能 将任何遵守了NSCoding协议的”对象”存储到文件中 (对象要是使用归档 解档 要遵守 NSCoding 协议)归档、解档 ...

2018-03-27 14:41:23 235

原创 IOS开发中的属性readwrite,readonly,retain,assign,copy,nonatomic,strong,weak.

1、weak 弱引用,对象释放后被置为nil,避免错误的内存访问。也就是 weak 可以在不增加对象引用计数的同时,又使得指针对象的访问是安全的。 2、nonatomic:非原子性,决定编译器生成的setter getter是否是原子操作;属性安全级别的表示,对属性赋值的时候不加锁,不加同步,多线程并发访问会提高性能。如果不加此属性则默认是两个访问方法都为原子型事务访问;貌似苹果官方推荐使用。 ...

2018-03-27 11:18:52 463

原创 iOS学习笔记 ——文件操作(NSFileManager)

默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。Library包含Caches、Preferences目录。Documents:苹果建议将程序创建产生的文件以及应用浏览产生的文件数据保存在该目录下,iTunes备份和恢复的时候会包括此目录Library:存储程序的默认设置或其它状态信息;Library/Caches:存放缓存文件,保存应

2017-03-17 17:44:02 425

原创 清理缓存Caches路径下的文件

1. 获取缓存文件的大小-( float )readCacheSize{    NSString *cachePath = [NSSearchPathForDirectoriesInDomains (NSCachesDirectory , NSUserDomainMask , YES) firstObject];    return [ self folderSizeAtP

2017-03-17 17:26:30 1428

翻译 SQLite简单使用 总结

SQLite 数据类型SQLite 数据类型是一个用来指定任何对象的数据类型的属性。SQLite 中的每一列,每个变量和表达式都有相关的数据类型。您可以在创建表的同时使用这些数据类型。SQLite 使用一个更普遍的动态类型系统。在 SQLite 中,值的数据类型与值本身是相关的,而不是与它的容器相关。SQLite 存储类每个存储在 SQLite 数据库中的值都具有以下存储类之一

2017-03-15 10:27:16 901

原创 使用FMDB进行数据库操作

FMDB: https://github.com/ccgus/fmdbFMDB有三个主要的类1.FMDatabase – 表示一个单独的SQLite数据库。 用来执行SQLite的命令。2.FMResultSet – 表示FMDatabase执行查询后结果集3.FMDatabaseQueue – 如果你想在多线程中执行多个查询或更新,你应该使用该类。这是线程安全的。

2017-03-15 09:58:23 558

原创 UIButton将title和image放置在任意位置上

实现效果图:// 设置内容对齐方式,并设置内容距离四周距离(上左下右)  button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;  button.contentEdgeInsets = UIEdgeInsetsMake(0,10, 0, 0);    // 

2017-03-09 15:24:56 387

原创 手势密码锁

一、 手势解锁应用 分析 1.监听手指在view上的移动,首先肯定需要自定义一个view,重写touch began,touch move等方法,当手指移动到圈上时,让其变亮。可以通过button按钮来实现。2.界面搭建背景图片(给控制器的view添加一个imageview,设置属性背景图片)九个按钮(把九个按钮作为一个整体,使用一个大的view来管

2016-10-31 17:32:47 1217

原创 iOS开发之AFN的基本使用

本篇将从四个方面对iOS开发中经常使用到的AFNetworking框架进行讲解:一、什么是 AFN二、为什么要使用 AFN三、AFN 怎么用三、AFN和ASI的区别 一、什么是 AFNAFN 全称为 AFNetworking,是一个构建与在 NSURLConnection、NSOperation 以及其他熟悉的 Founation 技术之上的一个

2016-10-30 16:46:32 1308

原创 使用CoreLocation定位

CoreLocation框架(CoreLocation.framework)可用于定位设备当前的经纬度,通过该框架,应用程序可通过附近的蜂窝基站、WIFI信号或者GPS等信息计算用户位置。iOS SDK提供了CLLocationManager、CLLocationManagerDelegate来处理设备的定位信息,包括获取设备的方向以及进行方向检测等。其中CLLocationManager

2016-10-20 16:12:04 621

原创 MBProgressHUD

//方式1.直接在View上show  HUD = [[MBProgressHUD showHUDAddedTo:self.view animated:YES] retain];  HUD.delegate = self;    //常用的设置  //小矩形的背景色  HUD.color = [UIColor clearColor];//这儿表示无背景  //显示的文字

2016-10-19 18:09:17 527

原创 JSON 和 XML优缺点的比

1.定义介绍(1).XML定义扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。XML

2016-09-16 21:57:00 417

原创 UIScrollView控件实现图片轮播

1#import"YYViewController.h" 2 3 @interface YYViewController () 4 @property (weak, nonatomic) IBOutlet UIScrollView *scrollview; 5 /** 6 * 页码 7 */ 8 @property (weak, nonatomic)

2016-08-10 13:11:57 300

原创 cell 的定义

一.界面搭建 1.确定开发模式     如果界面是固定的,可以用xib     界面的一些内容不固定,就用纯代码     cell用什么方式去开发(我们采用纯代码和xib结合的方式) 2.划分层次结构     2.1 怎么划分?          按照功能划分          按照隐藏效果:在某些条件下,一些控件要一起隐藏,就可以放在同一模

2016-08-10 13:04:45 1385

转载 自定义UITableView每组头部控件

1.创建一个继承UITableViewHeaderFooterView的类,拥有一个模型2.重写initWithStyle:reuseIdentifier:方法 添加所有需要显示的子控件(不需要设置子控件的数据和frame, 子控件要添加到contentView中) 进行子控件一次性的属性设置(有些属性只需要设置一次, 比如字体\固定的图片)- (instancetype)in

2016-07-23 00:44:48 295

转载 数据解析

数据解析1 数据传输过程前端:请求(iOS/安卓(JAVA)PC(浏览器(HTML/CSS/JS))) :OC/JAVA/HTML/CSS/JS后端:响应(服务器开发:php/java/.net)前端和后端交互的"数据格式": XML/JSON数据解析. XML/"JSON" ----> OC   客户端发送请求给服务器,服务器接收到客户端的请求之后,返回给客户端JSON数据.   客户端需...

2016-07-22 20:25:22 475

转载 多控制器之间的跳转

多控制器之间的跳转1>  什么是多控制器之间的跳转?在一个 APP 中,会存在多个控制器,多个控制器的存在就会存在控制器的跳转问题.2>  包含:连线跳转,modal 方式以及navigationController/tabBarontroller方式连线跳转:根据绑定的 ID 进行控制器的跳转连线跳转的分类:> 自动型:点击控件后,自动跳转到下一个控制器(ac

2016-07-22 19:56:05 535

原创 判断是否实现新特性特效

以下列方法的返回结果去跳转相对的控制器实现新特性,并保存最新的版本号.- (BOOL)isNewVersion {        // MARK: - 目标:第一次启动这个应用时,显示新特性界面,以后就直接进入主程序!    // 版本号:两个版本号。Info.plist中有对应的版本号    // 2.1 获取应用当前的版本号    // 获取Info.plist文件的所

2016-07-21 15:55:21 302

原创 Masonry的使用方法

//define this constant if you want to use Masonry without the 'mas_' prefix// 如果你想在使用Masonry框架时省略mas_的前缀请定义下面这个宏#define MAS_SHORTHAND//define this constant if you want to enable auto-boxing

2016-07-18 16:17:15 391

原创 纯代码实现UITableViewCell的自定义扩展

第一种,简单的增加UITableViewCell一些小功能例如在cell上面添加一个UILabel。直接在UITableViewCell的生成方法中实现,代码如下- (UITableViewCell *)tableView:(UITableView *)tableViewcellForRowAtIndexPath:(NSIndexPath *)indexPa

2016-07-18 14:59:28 533

空空如也

空空如也

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

TA关注的人

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