自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 iOS快速创建单例

单例源代码 Singleton.h// .h#define singleton_interface(class) + (instancetype)shared##class;// .m#define singleton_implementation(class) \static class *_instance; \\+ (id)allocWithZone:(struct _NSZone

2015-11-02 10:21:19 295

原创 @property知识点补充

1、@synthesize和@dynamic作用1)@property有两个对应的词,一个是@synthesize,一个是@dynamic。如果@synthesize和@dynamic都没写,那么默认的就是@syntheszie var = _var;2)@synthesize的语义是如果你没有手动实现setter方法和getter方法,那么编译器会自动为你加上这两个方法。3)@dynamic告

2015-10-04 18:02:58 358

转载 NSOperation

一、NSOperation简介1.简单说明NSOperation的作⽤:配合使用NSOperation和NSOperationQueue也能实现多线程编程NSOperation和NSOperationQueue实现多线程的具体步骤:(1)先将需要执行的操作封装到一个NSOperation对象中(2)然后将NSOperation对象添加到NSOperationQueue中(3)系统会⾃动将NSOper

2015-09-11 15:16:25 367

转载 标准的单例方法

一个单例创建不严格造成了的问题。简单说来就是在有的地方使用了alloc创建了多个实例,当然如果严格按照接口的方法调用是不会有问题的,但是如果项目碰到有不太熟悉的人使用时在处理时就会出现使用其它的方法来创建实例,比如说用alloc,这样本打算使用相同的一个实例成了多个而达不到做这个模式的目的。关于单例模式的实现主要是static调用后存储空间不释放的特性使得实例在程序的生命周期中保持唯一,根据这个特点

2015-09-09 17:15:45 515

原创 iOS单例模式

使用dispatch_once_t创建单例模式+ (AccountManager *)sharedManager { static AccountManager *sharedAccountManagerInstance = nil; static dispatch_once_t predicate; dispatch_once(&predicate, ^{

2015-08-22 11:33:58 381

原创 Quartz2D完成图片剪切

1、剪切图片让图片圆形展示:先画一个圆,让图片显示在圆的内部,超出的部分不显示。- (void)drawRect:(CGRect)rect{ //画圆,以便以后指定可以显示图片的范围 //获取图形上下文 CGContextRef ctx=UIGraphicsGetCurrentContext(); CGContextAddEllipseInRect(ctx, CGR

2015-08-17 16:38:02 279

原创 计算UITableViewCell高度

1、创建一个UITableViewCell的子类,命名为MyCell,同时创建nib文件,然后拖入一个UITableViewCell控件,在Identifier那里写入重用标识cell,然后关联MyCell。cell中加入一个imageView和label。用到了auto layout。接着创建一个UITableViewController的子类,命名为TestCellTableViewContro

2015-08-05 10:15:18 275

原创 iOS毛玻璃效果

iOS 8 SDK中直接提供了UIBlurEffect类与UIVisualEffectView类,可以实现毛玻璃效果1、 创建UIBlurEffect类的实例,并指定某一种毛玻璃效果。UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight]; UIBlurEffectStyleExtraLight

2015-07-30 09:45:36 308

转载 OC温故:类的三大特性(封装,继承,多态)

面向对象程序设计中的类有三大特性:继承,封装,多态,这个也是介绍类的时候,必须提到的话题,那么今天就来看一下OC中类的三大特性:一、封装封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能,Java中有四种访问权限修饰符:public,default,protected,private访问权限依次递减,这样我们在定义类的时候,哪些字段和方法不想暴露出去,哪些字段和方法可以暴

2015-07-28 10:05:41 368

转载 Objective-C——Protocol

因为Object-C是不支持多继承的,所以很多时候都是用Protocol(协议)来代替。Protocol(协议)只能定义公用的一套接口,但不能提供具体的实现方法。也就是说,它只告诉你要做什么,但具体怎么做,它不关心。当一个类要使用某一个Protocol(协议)时,都必须要遵守协议。比如有些必要实现的方法,你没有去实现,那么编译器就会报警告,来提醒你没有遵守××协议。注意,我这里说的是警告,而不是错误

2015-07-27 10:09:33 359

转载 Objective-C——Category

Objective-C提供了一种与众不同的方式——Category,可以动态的为已经存在的类添加新的行为。这样可以保证类的原始设计规模较小,功能增加时再逐步扩展。使用Category对类进行扩展时,不需要访问其源代码,也不需要创建子类。Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中。实现起来很简单,举例说明。SomeClass.h@interfac

2015-07-27 09:56:14 342

转载 图片压缩的一则代码

iOS 压缩图片分辨率+ (UIImage *)imageWithMaxSide:(CGFloat)length sourceImage:(UIImage *)image{ CGFloat scale = [[UIScreen mainScreen] scale]; CGSize imgSize = CWSizeReduce(image.size, length); UII

2015-07-24 10:44:05 331

转载 Objective-C中的@property

1.@property是什么@Property是声明属性的语法,它可以快速方便的为实例变量创建存取器,并允许我们通过点语法使用存取器。存取器(accessor):指用于获取和设置实例变量的方法。用于获取实例变量值的存取器是getter,用于设置实例变量值的存取器是setter。2.创建存取器2.1 手工创建存取器我们先看两段代码:// Car.h#import <foundation founda

2015-07-23 10:02:23 414

转载 关于block使用的5点注意事项

1、在使用block前需要对block指针做判空处理。 不判空直接使用,一旦指针为空直接产生崩溃。if (!self.isOnlyNet) { if (succBlock == NULL) { //后面使用block之前要先做判空处理 return; } id data = [NSKeyedUnarchiver unarchiveObjectWithFile

2015-07-21 09:25:39 264

原创 KVC的使用

定义一个Student类和Course类,继承于NSObject。1、一般的KVC访问,在Student类.h中定义一个属性#import <Foundation/Foundation.h>@interface Student : NSObject{ NSString *studentName;}.m文件也没有任何的实现。studentName属性没有加property,原来的访问方法就

2015-07-18 10:07:50 361

原创 popoverController

popoverController是iPad开发中常见的一种控制器(在iPhone上不允许使用)跟其他控制器不一样的是,它直接继承自NSObject,并非继承自UIViewController它只占用部分屏幕空间来呈现信息,而且显示在屏幕的最前面 在另一篇博客《自定义美团的导航栏》中便使用到了popoverController来显示菜单分类和城市选择。 1、使用步骤 (1)设置内容控制器

2015-07-17 16:34:28 773

原创 GCD多线程3

一、延迟执行 iOS常见的延时执行有2种方式 (1)调用NSObject的方法- (void)performSelector:(SEL nonnull)aSelector withObject:(id nullable)anArgument afterDelay:(NSTimeInterval)delay(2)使用GCD函数void dispa

2015-07-16 16:31:24 485

原创 GCD多线程2

一、主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行。 如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。(1)使用异步函数执行主队列中得任务- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup a

2015-07-16 15:27:07 312

原创 GCD多线程1

一、GCD中有2个用来执行任务的函数 (1)用同步的方式执行任务 dispatch_sync(dispatch_queue_t queue, dispatch_block_t block); 参数说明: queue:队列block:任务 (2)用异步的方式执行任务 dispatch_async(dispatch_queue_t queue, dispatch_block_t block);二

2015-07-16 10:32:28 333

原创 iOS-正则表达式

1.邮箱验证+ (BOOL) validateEmail:(NSString *)email{ NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHE

2015-07-16 09:23:17 402

原创 用MindNode描述了一个小项目思路

Will_Photo_River 浏览图片像流水一般滑动,点击图片放大或缩小,双击排列成九宫格或恢复滑动动画 使用枚举定义图片的不同状态,正常,放大,九宫格 依据图片在数组中的下标设置图片的frame、alpha、size、移动的速度 添加手势动作,实现动画 github地址:https://github.com/ywwill/Will_Photo_River

2015-07-15 16:22:38 844

转载 FMDB的使用

FMDB有三个主要的类 1.FMDatabase – 表示一个单独的SQLite数据库。 用来执行SQLite的命令。 2.FMResultSet – 表示FMDatabase执行查询后结果集 3.FMDatabaseQueue – 如果你想在多线程中执行多个查询或更新,你应该使用该类。这是线程安全的。数据库创建 创建FMDatabase对象时参数为SQLite数据库文件路径。该路径可以是以

2015-07-15 10:28:30 461

原创 自定义美团的导航栏

自定义美团的导航栏 1.自定义navigationItem,在xib中自定义navigationItem的样式 2.项目使用MVC编程模式 创建两个模型: 商品分类模型 CategoryModel@interface CategoryModel : NSObject#pragma mark - 声明属性//图标@property (copy,nonatomic)NSString *

2015-07-15 09:40:06 1755

原创 Xcode6快捷键

1.文件CMD + N: 新文件 CMD + SHIFT + N: 新项目 CMD + O: 打开 CMD + S: 保存 CMD + SHIFT + S: 另存为 CMD + W: 关闭窗口 CMD + SHIFT + W: 关闭文件2.编辑CMD + [: 左缩进 CMD + ]: 右缩进CMD + CTRL + LEFT: 折叠 CMD + CTRL + RIGHT: 取消折叠

2015-07-14 10:18:38 311

原创 SDWebImage的使用心得

一、使用CocoaPods下载SDWebImage。 二、在需要的地方导入头文件#import "UIImageView+WebCache.h"三、第三步,缓存图片的方法 (1)sd_setImageWithURL://图片缓存的基本代码,就是这么简单 [self.imageView sd_setImageWithURL:imagePath1];(2)sd_setImageWithURL

2015-07-14 08:54:23 327

原创 第三方框架Masonry的基本使用

1.Masonry支持的属性@property (nonatomic, strong, readonly) MASConstraint *left;@property (nonatomic, strong, readonly) MASConstraint *top;@property (nonatomic, strong, readonly) MASConstraint *right;@

2015-07-13 15:25:35 393

原创 iOS3D转场动画

//3D转场动画的实现方法//  ViewController.m//  3DAnimation////  Created by Apple-YangWei on 15/5/12.//  Copyright (c) 2015年 Apple-YangWei. All rights reserved.//#import "ViewCo

2015-07-11 13:55:36 456

javascript-in-one-pic

一张图描述javascript的所有知识点

2015-07-14

空空如也

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

TA关注的人

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