自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 UIview图层的技术

UIView 中常见的方法总结addSubview: 添加一个子视图到接收者并让它在最上面显示出来。 - (void)addSubview:(UIView *)view 讨论 这方法同样设置了接收者为下一个视图响应对象。接收者保留视图。如果你使用removeFromSuperview方法用来把视图移除他的显示列表,那么视图将会被释放。如果你想要在视图移除显示列表後保留并使用这个视图(如果,举

2015-11-30 11:24:32 383

转载 uiwebview load date

- (void)viewDidLoad { [super viewDidLoad]; [self setupUI]; NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.docx" ofType:nil]; NSURL *url = [NSURL fileURLWithPath:p

2015-11-23 11:14:49 357

原创 iOS 跳转

最近在工作中运用到了多次页面跳转,比如先从A界面跳到B界面,再从B界面跳到C界面,最后需要从C界面直接跳转到A界面,在这里我讲讲解直接从C界面跳转到A界面的方法。由于小弟技术比较菜,有讲解不好的地方清指教。在iOS开发中,我们通常用得最多的页面跳转方式就是通过NavigationBar的push和pop跳转方法,下面这种跳转方法也是基于NavigationBar的跳转方法。因为Navigation

2015-11-23 10:49:21 401

原创 iphone launchimage

iPhone Portrait iOS 8-Retina HD 5.5 (1242×2208) @3xiPhone Portrait iOS 8-Retina HD 4.7 (750×1334) @2xiPhone Portrait iOS 7,8-2x (640×960) @2xiPhone Portrait iOS 7,8-Retina 4 (640×1136) @2xiPhone Port

2015-11-16 17:43:23 353

原创 ios 长时间后台

前段时间做一个闹钟类型的产品,使用localnotification不太符合要求。对于ios7,苹果支持几种后台运行模式,backgroundTask,voip,后台播放音乐等,具体看官方文档就好。我这边需要在后台跑一个长时间运行的计时器,所以就不能让app进入suspend状态。很早以前听说可以通过后台播放音乐来实现,借鉴了一下,测试好几天,找出来了一个还比较靠谱的方案:首先在- (void)ap

2015-11-16 10:02:50 841

原创 Presistence

// // ViewController.m // Presistence // // Created by 张光发 on 15/11/11. // Copyright © 2015年 张光发. All rights reserved. //import “ViewController.h”@interface ViewController () @property(stron

2015-11-13 02:06:35 784

转载 tfh

http://www.tuicool.com/articles/Nraau2

2015-11-12 02:32:29 266

原创 responsrializer-afn

默认是JSON数据,接收类型是JSON 如果接收的类型和返回的类型不匹配会报错 // 1.创建AFN管理者 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; // 默认请求二进制 // 默认响应是JSON // 告诉AFN,支持接受 text/xml 的数据 // [A

2015-11-11 21:42:26 258

原创 改变view的大小

/** * 切换城市 */- (IBAction)changeCity { MTCityViewController *city = [[MTCityViewController alloc] init]; MTNavigationController *nav = [[MTNavigationController alloc] initWithRootViewControl

2015-11-09 17:43:17 291

原创 loopview(死循环实现轮播)

//// WMLoopView.m// WMLoopView//// Created by Mark on 15/3/30.// Copyright (c) 2015年 yq. All rights reserved.//#import "WMLoopView.h"#define kIdentifier @"WMLoopViewCellIdentifier"#define k

2015-11-05 15:48:51 565

原创 aps clang: error: linker command failed with exit code 1 (use -v to see invocation)

link binary with librarys 重新添加

2015-11-05 04:29:09 269

原创 cocoapod error diff

diff: /../Podfile.lock: No such file or directory diff: /Manifest.lock: No such file or directory error: The sandbox is not in sync with the Podfile.lock. Run ‘pod install’ or update your CocoaPods i

2015-11-02 23:51:19 239

原创 根据颜色和大小 画图

(UIImage )imageFromColor:(UIColor )color forSize:(CGSize)size withCornerRadius:(CGFloat)radius { CGRect rect = CGRectMake(0, 0, size.width, size.height); UIGraphicsBeginImageContext(rect.size);CGCon

2015-11-02 23:14:05 257

转载 旋转小图图标

///点击一个 调用3次的 颜色 下拉动画 旋转小图图标#pragma mark - animation- (void)animateIndicator:(CAShapeLayer *)indicator Forward:(BOOL)forward complete:(void(^)())complete{ [CATransaction begin]; [CATransactio

2015-11-01 01:22:00 342

转载 29When we call objective c is runtime language what does it mean?

29When we call objective c is runtime language what does it mean? 我们说的oc是动态运行时语言是什么意思? 答案:多态。主要是将数据类型的确定由编译时,推迟到了运行时。 这个问题其实浅涉及到两个概念,运行时和多态。 简单来说,运行时机制使我们直到运行时才去决定一个对象的类别,以及调用该类别对象指定方法。 多态:不同对象以自己

2015-10-29 02:08:03 278

转载 28What are mutable and immutable types in Objective C?

28What are mutable and immutable types in Objective C? oc中可修改和不可以修改类型。 答案:可修改不可修改的集合类。这个我个人简单理解就是可动态添加修改和不可动态添加修改一样。 比如NSArray和NSMutableArray。前者在初始化后的内存控件就是固定不可变的,后者可以添加等,可以动态申请新的内存空间nsstring 是栈管理 n

2015-10-29 02:03:14 194

原创 27What is purpose of delegates?

27What is purpose of delegates? 代理的作用? 答案:代理的目的是改变或传递控制链。允许一个类在某些特定时刻通知到其他类,而不需要获取到那些类的指针。可以减少框架复杂度。 另外一点,代理可以理解为java中的回调监听机制的一种类似。

2015-10-29 02:00:51 238

原创 26.Difference between protocol in objective c and interfaces in java?

26.Difference between protocol in objective c and interfaces in java? oc中的协议和java中的接口概念有何不同? 答案:OC中的代理有2层含义,官方定义为 formal和informal protocol。前者和Java接口一样。 informal protocol中的方法属于设计模式考虑范畴,不是必须实现的,但是如果有实

2015-10-29 01:59:34 275

原创 extensions添加的方法是requires

25.Difference between categories and extensions? 类别和类扩展的区别。 答案:category和extensions的不同在于 后者可以添加属性。另外后者添加的方法是必须要实现的。 extensions可以认为是一个私有的Category。

2015-10-29 01:58:35 294

原创 volatile

21关键字volatile有什么含意?并给出三个不同的例子:一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:• 并行设备的硬件寄存器(如:状态寄存器)• 一个中断服务子程序中会访问到的非自动变量(No

2015-10-29 01:56:13 213

转载 类别 分裂

20类别的作用类别主要有3个作用:(1)将类的实现分散到多个不同文件或多个不同框架中。(2)创建对私有方法的前向引用。(3)向对象添加非正式协议。类别的局限性有两方面局限性:(1)无法向类中添加新的实例变量,类别没有位置容纳实例变量。(2)名称冲突,即当类别中的方法与原始类方法名称冲突时,类别具有更高的优先级。类别方法将完全取代初始方法从而无法再使用初始方法。无法添加实例变量的局限可以使用字典对象解

2015-10-29 01:55:50 256

原创 12obj-c的优缺点

12obj-c的优缺点 objc优点: 1) Cateogies 2) Posing 3) 动态识别 4) 指标计算 5)弹性讯息传递 6) 不是一个过度复杂的 C 衍生语言 7) Objective-C 与 C++ 可混合编程 缺点: 1) 不支援命名空间 2) 不支持运算符重载 3)不支持多重继承 4)使用动态运行时类型,所有的方法都是函数调用,所以很多编译时优化方法都用不到。(如内联函数等)

2015-10-29 01:45:43 354

原创 类工厂

9类工厂方法是什么 类工厂方法的实现是为了向客户提供方便,它们将分配和初始化合在一个步骤中,返回被创建的对象,并 进行自动释放处理。这些方法的形式是+ (type)className...(其中 className不包括任何前缀)。 工厂方法可能不仅仅为了方便使用。它们不但可以将分配和初始化合在一起,还可以为初始化过程提供对 象的分配信息。 类工厂方法的另一个目的是使类(比如NSWorkspace)

2015-10-29 01:44:25 240

原创 oc内存管理

7objc的内存管理 ?? 如果您通过分配和初始化(比如[[MyClass alloc] init])的方式来创建对象,您就拥 有这个对象,需要负责该对象的释放。这个规则在使用NSObject的便利方法new 时也同样适用。 ?? 如果您拷贝一个对象,您也拥有拷贝得到的对象,需要负责该对象的释放。 ?? 如果您保持一个对象,您就部分拥有这个对象,需要在不再使用时释放该对象。 反过来, ??

2015-10-29 01:43:20 169

转载 线程与进程的区别和联系?

3线程与进程的区别和联系? 进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对应用的并发性。 程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多

2015-10-29 01:41:49 157

原创 一些类型的区别

assign与retain:1、assign: 简单赋值,不更改索引计数;2、assign的情况:NSString *newPt = [pt assing]; 此时newPt和pt完全相同 地址都是0Xaaaa 内容为0X1111 即newPt只是pt的别名,对任何一个操作就等于对另一个操作, 因此retainCount不需要增加;3、assign就是直接赋值;4、retain使用了引用计

2015-10-29 01:35:52 161

原创 面试

__block和__weak修饰符的区别其实是挺明显的: 1.__block不管是ARC还是MRC模式下都可以使用,可以修饰对象,还可以修饰基本数据类型。 2.__weak只能在ARC模式下使用,也只能修饰对象(NSString),不能修饰基本数据类型(int),一半基本数据类型都是assgin。 **3.__block对象可以在block中被重新赋值(因为传的是地址),__weak(这个我就真

2015-10-29 01:27:55 835

原创 mvvm

Model层是少不了的了,我们得有东西充当DTO(数据传输对象),当然,用字典也是可以的,编程么,要灵活一些。Model层是比较薄的一层,如果学过Java的小伙伴的话,对JavaBean应该不陌生吧。ViewModel层,就是View和Model层的粘合剂,他是一个放置用户输入验证逻辑,视图显示逻辑,发起网络请求和其他各种各样的代码的极好的地方。说白了,就是把原来ViewController层的业务

2015-10-28 20:52:35 329

原创 bitcode

http://www.cocoachina.com/ios/20150702/12385.html

2015-10-09 19:07:54 203

原创 libtc++ lib

Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 11清楚缓存

2015-09-09 18:58:40 200

原创 单例

全局变量private let _singleton = Singleton() class Singleton: NSObject { class var sharedInstance: Singleton { get { return _singleton } } } 内部变量class Singleton

2015-09-09 10:24:51 195

原创 UIBackgroundTaskIdentifier

func applicationDidEnterBackground(application: UIApplication) { var identifier:UIBackgroundTaskIdentifier = application.beginBackgroundTaskWithExpirationHandler({ () -> Void in app

2015-09-08 01:17:06 566

原创 文章标题

[a addObserver:b forKeyPath:@”name” options:NSKeyValueObservingOptionOld | NSKeyValueObservingOptionNew context:@”test”];-(void)observeValueForKeyPath:(NSString )keyPath ofObject:(id)object change:(NSD

2015-09-04 19:52:27 216

原创 FMDatabaseQueue

使用FMDatabaseQueue 及线程安全在多个线程中同时使用一个FMDatabase实例是不明智的。现在你可以为每个线程创建一个FMDatabase对象。 不要让多个线程分享同一个实例,它无法在多个线程中同时使用。 若此,坏事会经常发生,程序会时不时崩溃,或者报告异常,或者陨石会从天空中掉下来砸到你Mac Pro. 总之很崩溃。所以,不要初始化FMDatabase对象,然后在多个线程中使用

2015-09-04 19:01:58 924

原创

2、 带参宏一般用法比如#defineMAX(a,b) ((a)>(b)?(a):(b))则遇到MAX(1+2,value)则会把它替换成:((1+2)>(value)?(1+2):(value))注意事项和无参宏差不多。但还是应注意defineFUN(a) “a”则,输入FUN(345)会被替换成什么?其实,如果这么写,无论宏的实参是什么,都不会影响其被替换成”a”的命运。也就是说,”“内的字符不

2015-08-27 19:12:11 320

原创 判断device

#define Screen_height [[UIScreen mainScreen] bounds].size.height#define Screen_width [[UIScreen mainScreen] bounds].size.width#define iPhone6Plus ([UIScreen instancesRespondToSelector:@selector(cur

2015-08-21 14:06:16 376

原创 NSarray ...............

基础集合类是每一个Mac/iOS应用的基本组成部分。在本文中,我们将对”老类”(NSArray, NSSet)和”新类”(NSMapTable, NSHashTable, NSPointerArray)进行一个深入的研究,探索每一个的效率细节,并讨论其使用场景。 提示:本文包含一些参照结果,但它们并不意味着绝对精确,也没有进行多个、复杂的测试。这些结果的目的是给出一个快速和主要的运行时统计。所有

2015-08-20 14:22:31 536

原创 textview 限制

关闭联想功能 textField.autocorrectionType=UITextAutocorrectionTypeNo; -(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{ NSInteger count = [

2015-08-19 16:19:37 319

原创 header

// PNG JPG 图片路径#define PNGPATH(NAME) [[NSBundle mainBundle] pathForResource:[NSString stringWithUTF8String:NAME] ofType:@"png"]#define JPGPATH(NAME) [[NSBundle mainBundle] pathForRe

2015-08-14 19:02:54 277

原创 九点图

//返回一个可拉伸的图片- (UIImage *)resizeWithImageName:(NSString *)name{ UIImage *normal = [UIImage imageNamed:name]; // CGFloat w = normal.size.width * 0.5f ; // CGFloat h = normal.size.heigh

2015-08-14 16:50:21 1073

空空如也

空空如也

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

TA关注的人

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