<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wjojo238的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wjojo238</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wjojo238]]></copyright><item><title><![CDATA[UIButton]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52682927</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52682927</guid><author>wjojo238</author><pubDate>Tue, 27 Sep 2016 17:40:13 +0800</pubDate><description><![CDATA[UIButtonUIButton相关常用方法和属性能够定义的button类型有以下6种: 
typedef NS_ENUM(NSInteger, UIButtonType) {    UIButtonTypeCustom               自定义风格        
    UIButtonTypeDetailDisclosure     蓝色小箭头按钮
    UIButtonTypeI]]></description><category></category></item><item><title><![CDATA[UI界面-UILabel]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52649224</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52649224</guid><author>wjojo238</author><pubDate>Sat, 24 Sep 2016 11:15:39 +0800</pubDate><description><![CDATA[UILabelUILabel，标签类,是iPhone界面最基本的控件,主要用来显示文本信息
让一个控件通过纯代码形式创建并且可视化初始化一个label控件UILabel *label1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];将控件添加到视图上[self.view addSubview:label1];上面两步就是]]></description><category></category></item><item><title><![CDATA[OC学习日记17 (三) get和post]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52350945</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52350945</guid><author>wjojo238</author><pubDate>Mon, 29 Aug 2016 10:39:06 +0800</pubDate><description><![CDATA[get和post前言get和post是我们实现API接口功能所需要的两种方式，实际上需要哪种根据网站对此的要求，而我们获取到所要的消息前，根据进程继续执行与否，我们又分为同步和异步两种方式。因此，我们实际上一共要学习同步get、同步post、异步get、异步post四种方式。API接口例子:我们首先要为自己的软件找一个合适的API接口，这里我就以新浪接口为例子： 
注册成功后，我们随便先注册一个企业]]></description><category></category></item><item><title><![CDATA[OC学习日记017（二）从网络下载图片放到UI界面]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52350596</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52350596</guid><author>wjojo238</author><pubDate>Mon, 29 Aug 2016 10:06:58 +0800</pubDate><description><![CDATA[NSURL的应用与编码步骤:我们下载图片时，其实只需要先获取图片相对应的URL，然后通过NSDATA类型的方法去获取（下载）图片的数据，就可以得到我们要的图片了。
第一步:这里我们要去Main.storyboard里面拉出一个Image View的控件
第二步：然后通过按住control或鼠标右键去将控件关联到我们主函数的属性声明中
NSString *urlString=@"http://f.hi]]></description><category></category></item><item><title><![CDATA[OC学习日记017（一）代码块]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52350261</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52350261</guid><author>wjojo238</author><pubDate>Mon, 29 Aug 2016 09:33:06 +0800</pubDate><description><![CDATA[代码块前言大多书本上的代码块讲解非常的累赘和复杂，其实代码块我们可以把它理解为C里面的函数，就是把一些代码封装起来，使它们可以模块化使用。代码块（block）的声明与实现代码块的作用block 允许开发者在两个对象之间任意语句当作数据进行传递 block 使用了与一个函数相同的机制，可以像声明一个函数一样来声明block；可以像定义一个函数的方法一样来定义一个block，也可以讲block当做对象来]]></description><category></category></item><item><title><![CDATA[Alcatraz的安装和使用]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52292432</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52292432</guid><author>wjojo238</author><pubDate>Tue, 23 Aug 2016 16:52:41 +0800</pubDate><description><![CDATA[一、简单说明 
Alcatraz 是一款 Xcode的插件管理工具，可以用来管理XCode的 插件、模版以及颜色配置的工具。二、如何安装 
1.github地址:https://github.com/alcatraz/Alcatraz2.安装方法方法一：在命令行中输入如下指令：curl -fsSL https://raw.github.com/alcatraz/Alcatraz/master/Scr]]></description><category></category></item><item><title><![CDATA[OC学习日记016-IOS文件系统]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52291116</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52291116</guid><author>wjojo238</author><pubDate>Tue, 23 Aug 2016 15:11:34 +0800</pubDate><description><![CDATA[IOS文件系统前言我们其实已经把OC的大致内容学完了，我们在上几章已经开始用iOS的结构去写程序了，我们今天来讲讲IOS的文件结构，以便于我们之后讲UI的时候可以更好的接轨。IOS的文件系统组成当第一次启动app 的时候，IOS操作系统就为此APP创建一个文件系统，该文件系统下默认有四个目录,分别是: Documents：存储用户在操作app时产生的数据，此目录下的数据可以通过iCloud进行同步]]></description><category></category></item><item><title><![CDATA[OC学习日记015-工厂模式]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52276293</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52276293</guid><author>wjojo238</author><pubDate>Mon, 22 Aug 2016 14:05:29 +0800</pubDate><description><![CDATA[工厂模式概念：专门定义一个类来负责创建其他类的实例，被创建的实例通常具有相同的父类
简单的工厂模式我们新建如下类：（Cat类与Dog类继承于Animal类） 
我们先简单的为我们动物类声明一个吃的方法：#import <Foundation/Foundation.h>
@interface Animal : NSObject
-(void)eat;
@end然后我们分别在Cat类和Dog类中重写ea]]></description><category></category></item><item><title><![CDATA[OC学习日记014-单例模式和委托模式]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52275994</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52275994</guid><author>wjojo238</author><pubDate>Mon, 22 Aug 2016 13:24:00 +0800</pubDate><description><![CDATA[设计模式（用来解决某一特定问题的）： 
观察者模式｜单例模式｜委托模式｜工厂模式单例模式：什么时候使用单例模式？ 在一个工程中，一些类只需要一个实例变量的时候，我们就可以将这些类设计成单例模式
单例模式的作用？ 当一个‘类A’被设计成单例模式时，由‘类A’构造出的实例对象至于其他类来讲为全局实例对象，即在每一个类中由‘A’构造出的实例对象，都为相同的对象。
 单例模式的实现思路：一个类只能创建一个实]]></description><category></category></item><item><title><![CDATA[OC学习日记013-协议]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52242264</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52242264</guid><author>wjojo238</author><pubDate>Thu, 18 Aug 2016 16:28:20 +0800</pubDate><description><![CDATA[协议前言 我们之前讲过非正式协议（NSOject的类目），那么肯定还有正式协议。
 在OC中，一个类可以实现多个协议，通过协议可以弥补单继承的缺陷，但是协议跟继承不一样，协议只是一个方法列表，方法的实现得靠遵循该协议的类去完成。
概念 协议：协议是一套标准，这个标准里面声明了很多方法，但是不关心具体这些方法是怎么实现的，具体的实现是由遵循这个协议的类去完成的
下面我们通过学生和外卖员这个例子来说明:]]></description><category></category></item><item><title><![CDATA[OC学习日记012（二）类目、延展]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52241839</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52241839</guid><author>wjojo238</author><pubDate>Thu, 18 Aug 2016 16:01:06 +0800</pubDate><description><![CDATA[类目、延展前言类目跟延展都是为了为现有的类去扩展新的方法而存在的，因为我们程序的开发要符合我们之前所说的开闭原则（对扩展开放，对修改关闭），而类目主要为了去为我们的类去扩展共有的方法，延展是为了去扩展私有的方法。类目：定义： 为现有工程中的类和系统类添加新的方法
作用：在类目中添加新的方法及属性和在原类中添加方法和属性是一样的，都能够被类和类的子类调用。
在类目中为原类添加新的方法和属性
类目的使用]]></description><category></category></item><item><title><![CDATA[OC学习日记012（一）通知——观察者模式的另一种形式]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52224045</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52224045</guid><author>wjojo238</author><pubDate>Tue, 16 Aug 2016 18:58:18 +0800</pubDate><description><![CDATA[注意:我们随着学习的深入，在对KVC和KVO以及通知的学习中，我们发现原来简单的命令行的程序已经不能直观的反映我们学习的问题了，而且为了对后面UI的学习，我们可以新建IOS工程里面的Single View Application 项目，以便我们之后的学习。 
我们进去以后运行工程，系统会为我们生成你选择的一个iphone的模拟器。以下是一些常用快捷键：Cmd+1/2/3/4/5      可以切换模]]></description><category></category></item><item><title><![CDATA[OC学习日记11-KVC和KVO]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52213605</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52213605</guid><author>wjojo238</author><pubDate>Mon, 15 Aug 2016 19:09:45 +0800</pubDate><description><![CDATA[KVC和KVO前言相信在OC里面自学最有难度就是这个KVC和KVO了，很多人都不明白这个东西是什么，经过老师的讲解和我自己的理解，我是这样看的：KVC是在原来OC旧版本里面还没有设置器跟访问器的时候，用于对受保护的成员变量进行设置和访问的，所以我们要用KVC进行读写，在现在，KVC最大的作用就是动态访问某些变量的时候，缩减代码量，提高我们程序的可扩展性。KVC设计模式  －观察者模式   设计模式是]]></description><category></category></item><item><title><![CDATA[OC学习日记10-缓冲区和日期]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52193709</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52193709</guid><author>wjojo238</author><pubDate>Fri, 12 Aug 2016 17:27:35 +0800</pubDate><description><![CDATA[缓冲区和日期前言我们在读写文件或下载时，都需要频繁的将数据读入一个临时存储区，她通称为缓冲区。而我们在看qq动态或朋友圈，甚至在看很多文章的时候，我们都可以看到日期的应用。这两个是程序应用在实践中重要的数据类型。缓冲区1计算中文件分为哪几种? 
 二进制文件 和文本文件，其中图片、视频、音频等就是二进制文件,.txt的文件就是文本文件。 
 2.客户端与服务器端，或者客户端与客户端数据交流（二进制）]]></description><category></category></item><item><title><![CDATA[OC学习日记09-字典]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52175500</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52175500</guid><author>wjojo238</author><pubDate>Wed, 10 Aug 2016 19:32:06 +0800</pubDate><description><![CDATA[字典前言字典其实在理解了数组之上去看的话，是非常容易的。数组是一个一个数出现的，而字典是一对一对“数”出现的，这个“一对数”就是键值对。但是我们要注意，字典是集合，集合是无序的。而其实还有一个类型叫set集合，它也是无序的，因为它是单值无重复的集合。而且他们都有可变和不可变之分，我们把字符串、数组、字典还有set集合一起对比着学，就会容易记住了。不可变字典 NSDictionary1.概念：字典是关]]></description><category></category></item><item><title><![CDATA[OC学习日记08-对象与对象之间的关系（ 继承、 复合 、依赖）]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52175454</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52175454</guid><author>wjojo238</author><pubDate>Wed, 10 Aug 2016 19:25:44 +0800</pubDate><description><![CDATA[对象与对象之间的关系继承 复合什么是复合：1个类是由其他几个类组合而成的,他们之间的关系就叫复合。复合与继承之间的区别：1.满足继承的关系：is a     当A类是一个B类，A类可以从B类继承
2.满足复合的关系：has a     A类有一个B类，A和B就复合关系
依赖依赖：1个对象的方法的参数是另一个对象，那么他们的关系就是依赖关系。 
main.m文件:  Person *per = [Pe]]></description><category></category></item><item><title><![CDATA[OC学习日记07-数组]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52162359</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52162359</guid><author>wjojo238</author><pubDate>Tue, 09 Aug 2016 14:22:47 +0800</pubDate><description><![CDATA[数组不可变数组初始化创建一个数组（NSArray）对象     NSArray *array1=[[NSArray alloc]init];
        NSArray *array2=[NSArray array];
创建一个里面有一个元素的不可变数组     NSArray *array3=[NSArray arrayWithObject:@"Rick"];创建里面有多个元素的不可变数组NS]]></description><category></category></item><item><title><![CDATA[OC学习日记-06  封装、拆包与字符串]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52157429</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52157429</guid><author>wjojo238</author><pubDate>Tue, 09 Aug 2016 00:53:56 +0800</pubDate><description><![CDATA[字符串前言字符串其实就是我们最常用的的NSString,但是它通过oc中为字符串设定的很多方法，使它成为一个应用范围很广的基本数据类型，我们可以用今天的知识做出简单的语言屏蔽系统，文字输入密码检测系统等小程序。而首先，我们要知道字符串是一个实例对象，也就是引用类型，例如NSString *str=[NSString new];中，其实str本质就是一个指针。所以我们首先要学习如何将OC和C中的基本数]]></description><category></category></item><item><title><![CDATA[OC学习日记05-封装、继承和多态]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52130773</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52130773</guid><author>wjojo238</author><pubDate>Fri, 05 Aug 2016 16:57:05 +0800</pubDate><description><![CDATA[封装、继承和多态前言我们常说，OC语言中的三大特征是封装、继承和多态，这三大特点本质来说就是可以让我们的代码“活”起来，不再是牵一发动全身类型的代码，让我们开发者可以在改变、增添功能时，不再需要去基类去调整我们的代码，只需要书写好新的子类即可。封装封装的定义：隐藏内部实现，稳定外部接口好处：使用起来更加简单  
变量更加安全 
可以隐藏内部实现 
开发速度更加快捷作用：类来封装了属性和方法 
 方法]]></description><category></category></item><item><title><![CDATA[OC学习日记04-OC中类的属性]]></title><link>https://blog.youkuaiyun.com/wjojo238/article/details/52121526</link><guid>https://blog.youkuaiyun.com/wjojo238/article/details/52121526</guid><author>wjojo238</author><pubDate>Thu, 04 Aug 2016 18:00:21 +0800</pubDate><description><![CDATA[OC中类的属性前言在OC的类中，我们想把自己一些类里面的变量给隐藏起来，就要用到@protected还有@private，而对这些变量进行赋值还有调用，就要用到设置器（setter）与访问器（getter），但是我们会发现，如果用到标准的设置器和访问器的定义的话，代码量会非常的大，如果在制作大程序的时候，会使代码非常的“累赘”。那么，有没有简便的方法呢，这时候就要用到我们今天所说的类的属性。标准的设]]></description><category></category></item></channel></rss>