<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cjckkk的博客]]></title><description><![CDATA[ios]]></description><link>https://blog.youkuaiyun.com/cjckkk</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cjckkk]]></copyright><item><title><![CDATA[UIview图层的技术]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/50109845</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/50109845</guid><author>cjckkk</author><pubDate>Mon, 30 Nov 2015 11:24:32 +0800</pubDate><description><![CDATA[UIView 中常见的方法总结addSubview: 
添加一个子视图到接收者并让它在最上面显示出来。 
- (void)addSubview:(UIView *)view 
讨论 
这方法同样设置了接收者为下一个视图响应对象。接收者保留视图。如果你使用removeFromSuperview方法用来把视图移除他的显示列表，那么视图将会被释放。如果你想要在视图移除显示列表後保留并使用这个视图（如果，举]]></description><category></category></item><item><title><![CDATA[uiwebview load date]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49992475</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49992475</guid><author>cjckkk</author><pubDate>Mon, 23 Nov 2015 11:14:49 +0800</pubDate><description><![CDATA[- (void)viewDidLoad  
{  
    [super viewDidLoad];  
    [self setupUI];      NSString *path = [[NSBundle mainBundle] pathForResource:@"关于.docx" ofType:nil];  
    NSURL *url = [NSURL fileURLWithPath:p]]></description><category></category></item><item><title><![CDATA[iOS 跳转]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49992027</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49992027</guid><author>cjckkk</author><pubDate>Mon, 23 Nov 2015 10:49:21 +0800</pubDate><description><![CDATA[最近在工作中运用到了多次页面跳转，比如先从A界面跳到B界面，再从B界面跳到C界面，最后需要从C界面直接跳转到A界面，在这里我讲讲解直接从C界面跳转到A界面的方法。由于小弟技术比较菜，有讲解不好的地方清指教。
在iOS开发中，我们通常用得最多的页面跳转方式就是通过NavigationBar的push和pop跳转方法，下面这种跳转方法也是基于NavigationBar的跳转方法。因为Navigation]]></description><category></category></item><item><title><![CDATA[iphone launchimage]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49869359</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49869359</guid><author>cjckkk</author><pubDate>Mon, 16 Nov 2015 17:43:23 +0800</pubDate><description><![CDATA[iPhone Portrait iOS 8-Retina HD 5.5 （1242×2208） @3x
iPhone Portrait iOS 8-Retina HD 4.7 （750×1334） @2xiPhone Portrait iOS 7,8-2x （640×960） @2x
iPhone Portrait iOS 7,8-Retina 4 （640×1136） @2xiPhone Port]]></description><category></category></item><item><title><![CDATA[ios 长时间后台]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49862059</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49862059</guid><author>cjckkk</author><pubDate>Mon, 16 Nov 2015 10:02:50 +0800</pubDate><description><![CDATA[前段时间做一个闹钟类型的产品，使用localnotification不太符合要求。对于ios7，苹果支持几种后台运行模式，backgroundTask，voip，后台播放音乐等，具体看官方文档就好。我这边需要在后台跑一个长时间运行的计时器，所以就不能让app进入suspend状态。很早以前听说可以通过后台播放音乐来实现，借鉴了一下，测试好几天，找出来了一个还比较靠谱的方案：首先在- (void)ap]]></description><category></category></item><item><title><![CDATA[Presistence]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49811601</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49811601</guid><author>cjckkk</author><pubDate>Fri, 13 Nov 2015 02:06:35 +0800</pubDate><description><![CDATA[// 
//  ViewController.m 
//  Presistence 
// 
//  Created by 张光发 on 15/11/11. 
//  Copyright © 2015年 张光发. All rights reserved. 
//import “ViewController.h”@interface ViewController () 
@property(stron]]></description><category></category></item><item><title><![CDATA[tfh]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49792901</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49792901</guid><author>cjckkk</author><pubDate>Thu, 12 Nov 2015 02:32:29 +0800</pubDate><description><![CDATA[http://www.tuicool.com/articles/Nraau2]]></description><category></category></item><item><title><![CDATA[responsrializer-afn]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49786883</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49786883</guid><author>cjckkk</author><pubDate>Wed, 11 Nov 2015 21:42:26 +0800</pubDate><description><![CDATA[默认是JSON数据，接收类型是JSON
        如果接收的类型和返回的类型不匹配会报错  // 1.创建AFN管理者
    AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];    // 默认请求二进制
    // 默认响应是JSON    // 告诉AFN，支持接受 text/xml 的数据
    // [A]]></description><category></category></item><item><title><![CDATA[改变view的大小]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49741763</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49741763</guid><author>cjckkk</author><pubDate>Mon, 09 Nov 2015 17:43:17 +0800</pubDate><description><![CDATA[/**
 *  切换城市
 */
- (IBAction)changeCity {
    MTCityViewController *city = [[MTCityViewController alloc] init];
    MTNavigationController *nav = [[MTNavigationController alloc] initWithRootViewControl]]></description><category></category></item><item><title><![CDATA[loopview(死循环实现轮播)]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49663811</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49663811</guid><author>cjckkk</author><pubDate>Thu, 05 Nov 2015 15:48:51 +0800</pubDate><description><![CDATA[//
//  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]]></description><category></category></item><item><title><![CDATA[aps clang: error: linker command failed with exit code 1 (use -v to see invocation)]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49657337</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49657337</guid><author>cjckkk</author><pubDate>Thu, 05 Nov 2015 04:29:09 +0800</pubDate><description><![CDATA[link binary with librarys 重新添加]]></description><category></category></item><item><title><![CDATA[cocoapod error diff]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49594051</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49594051</guid><author>cjckkk</author><pubDate>Mon, 02 Nov 2015 23:51:19 +0800</pubDate><description><![CDATA[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]]></description><category></category></item><item><title><![CDATA[根据颜色和大小 画图]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49593775</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49593775</guid><author>cjckkk</author><pubDate>Mon, 02 Nov 2015 23:14:05 +0800</pubDate><description><![CDATA[(UIImage )imageFromColor:(UIColor )color forSize:(CGSize)size withCornerRadius:(CGFloat)radius 
{ 
CGRect rect = CGRectMake(0, 0, size.width, size.height); 
UIGraphicsBeginImageContext(rect.size);CGCon]]></description><category></category></item><item><title><![CDATA[旋转小图图标]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49541623</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49541623</guid><author>cjckkk</author><pubDate>Sun, 01 Nov 2015 01:22:00 +0800</pubDate><description><![CDATA[///点击一个 调用3次的 颜色 下拉动画 旋转小图图标
#pragma mark - animation- (void)animateIndicator:(CAShapeLayer *)indicator Forward:(BOOL)forward complete:(void(^)())complete
{
    [CATransaction begin];
    [CATransactio]]></description><category></category></item><item><title><![CDATA[29When we call objective c is runtime language what does it mean?]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49484007</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49484007</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 02:08:03 +0800</pubDate><description><![CDATA[29When we call objective c is runtime language what does it mean? 
我们说的oc是动态运行时语言是什么意思？ 
答案：多态。主要是将数据类型的确定由编译时，推迟到了运行时。 
这个问题其实浅涉及到两个概念，运行时和多态。 
简单来说，运行时机制使我们直到运行时才去决定一个对象的类别，以及调用该类别对象指定方法。 
多态：不同对象以自己]]></description><category></category></item><item><title><![CDATA[28What are mutable and immutable types in Objective C?]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49483865</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49483865</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 02:03:14 +0800</pubDate><description><![CDATA[28What are mutable and immutable types in Objective C? 
oc中可修改和不可以修改类型。 
答案：可修改不可修改的集合类。这个我个人简单理解就是可动态添加修改和不可动态添加修改一样。 
比如NSArray和NSMutableArray。前者在初始化后的内存控件就是固定不可变的，后者可以添加等，可以动态申请新的内存空间nsstring 是栈管理 n]]></description><category></category></item><item><title><![CDATA[27What is purpose of delegates?]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49483783</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49483783</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 02:00:51 +0800</pubDate><description><![CDATA[27What is purpose of delegates? 
代理的作用？ 
答案：代理的目的是改变或传递控制链。允许一个类在某些特定时刻通知到其他类，而不需要获取到那些类的指针。可以减少框架复杂度。 
另外一点，代理可以理解为java中的回调监听机制的一种类似。]]></description><category></category></item><item><title><![CDATA[26.Difference between protocol in objective c and interfaces in java?]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49483737</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49483737</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 01:59:34 +0800</pubDate><description><![CDATA[26.Difference between protocol in objective c and interfaces in java? 
oc中的协议和java中的接口概念有何不同？ 
答案：OC中的代理有2层含义，官方定义为 formal和informal protocol。前者和Java接口一样。 
informal protocol中的方法属于设计模式考虑范畴，不是必须实现的，但是如果有实]]></description><category></category></item><item><title><![CDATA[extensions添加的方法是requires]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49483717</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49483717</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 01:58:35 +0800</pubDate><description><![CDATA[25.Difference between categories and extensions? 
类别和类扩展的区别。 
 答案：category和extensions的不同在于 后者可以添加属性。另外后者添加的方法是必须要实现的。 
extensions可以认为是一个私有的Category。]]></description><category></category></item><item><title><![CDATA[volatile]]></title><link>https://blog.youkuaiyun.com/cjckkk/article/details/49483677</link><guid>https://blog.youkuaiyun.com/cjckkk/article/details/49483677</guid><author>cjckkk</author><pubDate>Thu, 29 Oct 2015 01:56:13 +0800</pubDate><description><![CDATA[21关键字volatile有什么含意?并给出三个不同的例子：一个定义为volatile的变量是说这变量可能会被意想不到地改变，这样，编译器就不会去假设这个变量的值了。精确地说就是，优化器在用到这个变量时必须每次都小心地重新读取这个变量的值，而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子：• 并行设备的硬件寄存器（如：状态寄存器）• 一个中断服务子程序中会访问到的非自动变量(No]]></description><category></category></item></channel></rss>