自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 姿势总结

UI 主框架 1.利用UIScrollView+自定义UITbaleViewCell+UICollectionView进行主界面框架的搭建。 2.创建UINavigationController基类,各功能模块导航控制器继承基类实现特有功能,在基类中对样式做统一更改,优化代码结构。 3.主架构采用UITabBarController+多UINavigationController的

2015-12-30 14:01:55 1360

原创 youmi

内存管理.md Code.m项目你项目中遇到什么问题怎么解决的1,one,window scrollview top1 点击 状态栏 上滑顶部2, 截取 cell 点击 计算点击商品次数3, uitableview 滑动卡4,后台用什么数据库5,用户订单提醒 提醒用什么消息推送模式你为什么从外企离职 -想获取更大的发展空间,在里面 感到很孤独 不想为别人的想法买单,想为自己买单iOS调试

2015-12-27 01:10:09 1221

原创 自定义Pop动画

modal界面跳转在IOS中,相比大家都不陌生,除了导航控制器中的经常使用的push以外,我们也经常使用从下而上跳转的控制器效果,这也就是modal效果。modal跳转使用对于使用storyBoard内进行连线的跳转,我们只需要将一个按钮连线到我们需要的控制器,然后选择modal效果,就可以实现从当前控制器跳转到下一个控制器。而如何通过代码的话,也十分容易,先准备好

2015-12-24 11:39:09 471

原创 内存管理

内存管理1.写一个setter方法用于完成@property (nonatomic,retain)* NSString *name,写一个setter方法用于完成@property(nonatomic,copy)NSString *name1>@property(nonatomic,retain)NSString *name;-(void)setName:(NSString *)name{i

2015-12-19 22:10:19 565

原创 ID,instancetype与__kindof

id instancetype __kindof 都是用于方法的返回值,描述返回的类型。id 这是iOS5之前的 缺点:不能帮你进行编译检查(这里就涉及到oc的runTime), 当你调用一个Person 没有的方法时(能调用任何对象的方法),编译能通过,但运行时就会报错。 也不能使用点语法 创建一个模型#import "Person.h"// 用类方法快速创建一个 对象[Pe

2015-12-16 12:47:44 531

原创 day4

修改UITextField的占位文字颜色富文本属性@property(nullable, nonatomic,copy) NSAttributedString *attributedPlaceholder;重写方法- (void)drawPlaceholderInRect:(CGRect)rect;KVC[self setValue:xmg_placeholderColor

2015-12-05 21:54:41 508

原创 day3

按钮的常见方法// 获得内部imageView的图片[btn imageForState:UIControlStateNormal];btn.currentImage;// 获得背景图片[btn backgroundImageForState:UIControlStateNormal];btn.currentBackgroundImage;// 获得内部titleLabel的文字[btn

2015-12-05 21:54:14 402

原创 day2

class和string[UITabBarButton class] == NSClassFromString(@"UITabBarButton")[UIButton class] == NSClassFromString(@"UIButton")@"UITabBarButton" == NSStringFromClass([UITabBarButton class])如何设置UITabBar和UI

2015-12-05 21:52:01 326

原创 day1

颜色通道一个颜色是由N个颜色通道组成一个颜色通道占据8bit一个颜色通道的取值范围 十进制:[0, 255]十六进制:[0x00, 0xFF]常见的颜色通道 RedGreenBlueAlpha颜色的类型 - 24bit颜色由RGB三个颜色通道组成表示形式 十进制(格式:R,G,B) 红色:255,0,0蓝色:0,0,255绿色:0,255,0白色:255,255,

2015-12-05 21:51:07 398

转载 iOS开发总结之代码规范

最近被安排fix项目的随机crash问题, 大大小小修复了差不多10个issue, 总结一下发现这些问题或多或少都是由代码习惯和编程规范引起的, 可见一个好的编码习惯是多么的重要! 趁着这两天休假将自己所认为的一些比较好的代码规范整理一下, 并结合之前遇到的实际case跟大家分享一下.命名规范总的来说, iOS命名两大原则是:可读性高和防止命名冲突(通过加前缀来保证). Objec

2015-12-04 10:24:14 440

转载 知其然亦知其所以然-NSOperation并发编程

对于iOS的并发编程, 用的最普遍的就是GCD了, GCD结合Block可以so easy的实现多线程并发编程. 但如果你看一些诸如AFNetworking, SDWebImage的源码, 你会发现它们使用的都是NSOperation, 纳尼? 难道NSOperation这货更屌? YES, 它确实更屌! Okay, 那我们就先来简单PK下GCD和NSOperation(当然这里也包括NSOper

2015-12-04 10:16:10 563

转载 GCD使用三部曲之:基本用法

什么是GCD?GCD全称为Grand Central Dispatch,是libdispatch的市场名称,而libdispatch是Apple的一个库,其为并发代码在iOS和OS X的多核硬件上执行提供支持。确切地说GCD是一套低层级的C API,通过 GCD,开发者只需要向队列中添加一段代码块(block或C函数指针),而不需要直接和线程打交道。GCD在后端管理着一个线程池,它

2015-12-04 10:13:55 375

转载 iOS 页面间几种传值方式(属性,代理,block,单例,通知

iOS 页面间几种传值方式属性(KVC,KVO),代理(delegate),block,单例,通知(NSNotification)**应用场景:**第二个视图控制器如何获取第一个视图控制的信息eg:第二个界面中的lable显示第一个界面的textField中的文本这就需要用到属性(kvc,kvo)传值,Block传值页面间传值有八大传值方式,下面我们就简单介绍下页面间常用的五种传值方式:属性传

2015-12-03 09:27:52 953

原创 KVC-KVO(键盘编码-键值观察)

KVC-KVO(键盘编码-键值观察)KVC (key-value-coding)方法列表objc// 获取通过key- (id)valueForKey:(NSString *)key;// 设置值- (void)setValue:(id)value forKey:(NSString *)key;- (id)valueForKeyPath:(NSString *)keyPath;- (vo

2015-12-02 21:04:32 678

转载 Delegate

delegate&protocoldelegate(委托/代理)是iOS开发中常用的设计模式,表示将一个对象的部分功能转交给另一个对象。借助protocol可以很方便实现这中设计模式。应用场景:通知与监听: 详见 delegate,notifucation,KVO三种模式实现通信的优缺点苹果系统自带:UITabelView oc 一个类只能继承一个父类,但代理可以使一个类继承多个协议。

2015-12-02 16:31:45 641

原创 IOS9新特性

常见关键字迎合swift语言,在swift中任何一个对象都是需要约束是否为空。好处:提高开发规范作用:在方法中才发挥作用,表示方法的参数或者返回值是否为空注意只能使用于对象类型NS_ASSUME_NONNULL_BEGIN与 NS_ASSUME_NONNULL_END之间所有的对象都是nonnulleg:为空时nullable:get,set可能为空 方式一: @property (n

2015-12-02 14:19:23 443

转载 RunTime

最近在找工作,Objective-C中的Runtime是经常被问到的一个问题,几乎是面试大公司必问的一个问题。当然还有一些其他问题也几乎必问,例 如:RunLoop,Block,内存管理等。其他的问题如果有机会我会在其他文章中介绍。本篇文章主要介绍RunTime。RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪

2015-12-01 21:42:02 341

原创 GCD 与 NSOperationQueue

GCD的队列类型并发队列 自己创建的全局串行队列 主队列自己创建的NSOperationQueue的队列类型主队列 [NSOperationQueue mainQueue]凡是添加到主队列中的任务(NSOperation),都会放到主线程中执行非主队列(其他队列) [[NSOperationQueue alloc] init]同时包含了:串行、并发功能添加到这种队列中的任

2015-12-01 21:23:42 392

转载 iOS设计模式(MVC和单例模式,门面和装饰器模式,适配器和观察者模式以及备忘录和命令模式)

iOS设计模式之一(MVC模式,单例模式)原文:iOS Design Patterns  译者krq_tiger[微博   博客] iOS 设计模式-你可能已经听说过这个词,但是你真正理解它意味着什么吗?虽然大多数的开发者可能都会认为设计模式是非常重要的,然而关于设计模式这一主题的文章却不多,并且有时候我们开发者在写代码的时候也不会太关注它。  在软件设

2015-12-01 20:25:48 394

原创 如何设置UITabBar和UINavigationBar的内容

class和string[UITabBarButton class] == NSClassFromString(@"UITabBarButton")[UIButton class] == NSClassFromString(@"UIButton")@"UITabBarButton" == NSStringFromClass([UITabBarButton class])如何设置UITabBar和UI

2015-12-01 20:18:25 407

空空如也

空空如也

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

TA关注的人

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