自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

blaze747

编程是个手艺活儿.

  • 博客(127)
  • 收藏
  • 关注

原创 93-Mac配置Apache服务器.

Mac配置Apache服务器1.准备工作在Finder中创建一个"Sites"的文件夹(文件夹名也可以自定义),直接创建在/Users/RHP(当前用户名)2.步骤1>切换工作目录cd /etc/apache22>备份文件:防止配置出错无法挽救,只需执行一次sudo cp httpd.conf httpd.conf.bak注意:如果后续操作出

2015-03-24 23:03:55 504

转载 108-Yosemite 10.10安装盘 U 盘制作教程

Yosemite 10.10安装盘 U 盘制作教程,黑苹果用户们是可以下载OS X 10.10系统的,但是安装却不行,因为需要通过系统验证,所以你只有制作启动U盘的方法来升级到 OS X 10.10,同时你需要知道的是,通过这种方法升级到 OS X10.10其硬盘将会格式化,所以请备份你所有的资料。  首先,你需要从 App Store中下载完整的 OS X Yosemite 安装

2015-03-24 22:57:52 670

转载 106-最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等

最全的常用正则表达式大全——包括校验数字、字符、一些特殊的需求等等     一、校验数字的表达式 1 数字:^[0-9]*$ 2 n位的数字:^\d{n}$ 3 至少n位的数字:^\d{n,}$ 4 m-n位的数字:^\d{m,n}$ 5 零和非零开头的数字:^(0|[1-9][0-9]*)$ 6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[

2015-03-24 22:57:07 828

原创 105-使用GData进行DOM解析XML的时候,最初编译会报错,解决办法

使用GData进行DOM解析XML的时候,最初编译会报错,解决办法1.点击当前项目选择build setting 输入指令 Header Search,拷贝如下字符串libxml includes require that the target Header Search Paths contain/usr/include/libxml22.点击当前项目选择bu

2015-03-24 22:56:06 490

原创 104-在xcode6中使用pch文件

2015-03-24 22:53:39 397

原创 103-静态库

什么是库?库是程序代码的集合,是共享程序代码的一种方式根据源代码的公开情况,库可以分为2种类型开源库公开源代码,能看到具体实现比如SDWebImage、AFNetworking闭源库不公开源代码,是经过编译后的二进制文件,看不到具体实现主要分为:静态库、动态库静态库和动态库的存在形式静态库:.a 和 .framework动态库:.dylib 和

2015-03-24 22:51:13 379

原创 102-资源打包,内存分配,内存泄漏,私有API,硬件信息的获取,使用imageName加载图片和使用imageWithContentsOfFile加载图片的场合优缺点及内存分析

一 资源打包1.如果部署版本>=8,并且图片放在Images.xcassets中,图片打包后会被放在Assets.car,并且会对图片资源进行压缩2.如果部署版本3.如果图片直接拖入项目中,不管部署版本是多少,都会被放入到MainBundle中注意:1.如果现在不需要支持iOS7,可以将部署版本改成iOS8,这样最终打包的资源会很小2.如果想要获取其他应用程

2015-03-24 22:46:53 541

原创 101-开发技巧和一些常见的问题(1)

开发技巧和一些常见的问题(1)1.项目名种含有 & 与字符,会造成程序错误解决方案第一种>删掉启动xib,LunchScreen第二种>右键LunchScreen—>Open As —> Soucre Type(查看源文件) —> Ctrl +F 找到 第二个verticalHuggingPriority将 text中的 & 与字符删掉2.调用的第三方框架或静态库如果包

2015-03-24 22:39:34 392

原创 100-git源代码管理

git源代码管理一.个人开发git源代码管理的原理:文件先被添加到暂缓区,通过commit命令才会被添加到本地库1.初始化本地仓库: git init 2.初始化项目:touch main.c 1>查看文件状态:git status · Untacked files(红色):表示新添加了文件,但是git不识别该文件(该文件没有被添加到暂缓区)· Changes to

2015-03-24 22:37:47 375

原创 99-SVN 使用

SVN 使用:最常使用:初始化:svn checkout /svn cosvn checkout http://www.svnchina.com/svn/swift  —username=RHP —password=123查看文件状态: svn status  / svn st?: 文件没有被本地版本库进行管理A: 文件被添加到本地版本库中M: 文件被修改还没有

2015-03-24 22:36:58 573

原创 98-GET 和 POST 方法的对比,以及安全性

GET 和 POST 方法的对比,以及安全性1.URLURL格式GET - GET方法的变化都在URL中1>服务器脚本有很多种,php,asp.net等2>如果要传参数,使用 "?"3>参数格式,值对--> 参数名 = 值4>多个参数使用 "&" 连接5>如果URL字符串中又中文/空格等特殊字符,需要加上百分号转义POSTURL 中不包含任何参数,要传参数直

2015-03-24 22:36:15 484

原创 97-XML 解析-SAX&DOM对比

XML 解析-SAX&DOM对比 SAX 解析- 只读- 从上到下- 利用5个代理方法,来实现解析,2/3/4这三个方法循环执行,一直到解析完毕- SAX方式没有第三方框架!- 适合于大的 XML 文件解析DOM 解析- 一次性将所有的文档以"树形"的方式读入内存- 如果横向节点非常深,内存消耗会非常大!- 能够修改XML的节点,增加节点,删除节点

2015-03-24 22:35:12 346

原创 96-iOS中的加密

加密 1.BASE 64 是网络上使用最广泛的编码系统,能够将任何二进制数据,转换成只有65个字符组成的文本文件a-z A-Z ,o-9,+,/,=注意:base 64,可以被反算,不够安全。在终端对字符编码:echo -n "A" | base64 "A”要编码的字符串在终端对字符解码:echo -n “QQ==" | base64 -D2.现代密码学 -

2015-03-24 22:35:06 430

原创 95-iPad开发(1)

iPad开发(1)   iPad和iPhone开发的主要区别1>设备支持的应用程序iPhone上只能运行iPhone程序iPad上能够运行iPhone \ iPad程序2>屏幕方向的支持iPhone支持3个方向iPad支持4个方向3>键盘iPad的虚拟键盘多了个退出键盘的按钮iPad特有的API1.UIPopoverControlle

2015-03-24 22:34:35 420

原创 94-iPad和iPhone设置判断

iPad开发中比iPhone上多了两个控制器1.UISplitViewConroller 2.UIPopoverController这两个控件只能在iPad上运行为了开发同时兼容 iPhone 和iPad 的应用,可以通过 iOS 提供的 UIDevice 类,该对象的 userInterfaceIdiom 属性返回一个UIUserInterfaceIdiom 枚举值, 该

2015-03-24 22:33:25 371

原创 92-NSOperation 操作,苹果公司推出的 并发 技术

NSOperation 操作,苹果公司推出的 并发 技术基础1>NSOperation 是基于 GCD 做的面向对象的封装2>是 OC 语言的3>相比较 GCD 使用更加简单4>并且提供了一些用 GCD 不是很好实现的功能5>苹果公司推荐使用的并发技术6>特点:将操作添加到队列核心概念将 NSOperation 添加到 NSOperationQueu

2015-03-24 22:24:54 427

原创 91- 运行循环:RunLoop

运行循环:RunLoop1.作用:1>保证程序不会退出2>监听所有事件:触摸、时钟、网络事件2.特性:1>如果没有任何事件发生,会进入休眠状态(省电)2>一旦监听到事件,会立即循环3>每一个线程都有一个 runloop,但是只有主线程的 runloop 会默认启动3.注意:1>runloop是在iOS开发的原始时代,需要大量使用2>运行循环在 i

2015-03-24 22:24:15 429

原创 90-自动释放池 autorelease经典案例题原理,创建和销毁,经典案例题,注意问题

自动释放池 autorelease  1.自动释放池原理1>所有 autorelease的对象,在出了作用域之后,会被添加到 最近 创建的自动释放池中2>当自动释放池被耗尽或者销毁时,会向池中的队形发送 release 消息,释放池中的所有对象2.重点注意问题1>自动释放池在ARC中有用么?自动释放池在ARC中同样有效,ARC只是在编译的时候,编译器根据代码结构

2015-03-24 22:22:56 429

原创 89-知识点补充,block循环引用,appearance用法,UISegmentedControl 用法

1. 设置导航条背景图片的时候forBarMetrics枚举的取值 设置导航条背景图片[navigationBar setBackgroundImage:[UIImage imageNamed:@"NavBar64"] forBarMetrics:UIBarMetricsDefault];设置导航条背景的时候forBarMetrics:枚举的取值1>UIBarMetricsDe

2015-03-24 22:21:16 705

原创 88-NSThread的使用

NSThread的使用 NSThread:一个NSThread就相当于一个线程创建并启动线程 -(instancetype)initWithTarget:selector:object:参数self:提供 selector 方法的对象,通常是selfselector:要执行的方法object:给方法提供的参数NSThread *thread=[[NSThread a

2015-03-24 22:20:34 442

原创 87-tableView的注册机制 ,strong和weak问题

tableView的注册机制 ,strong和weak问题tableView的注册机制 1.经典BUG:没有使用storyboard加载cell,使用代码创建并且tableview没有注册unable to dequeue a cell with identifier ID - must register a nib or a class for the identif

2015-01-26 20:37:21 776

原创 86-Core Animation 核心动画

Core Animation 核心动画1.简介Core Animation是一组非常强大的动画处理API,使用它用少量的代码就可以实现非常强大的功能和炫丽的动画效果。Core Animation跨平台可以用在Mac OS X和iOS平台。Core Animation的动画执行过程都是在后台操作的,不会阻塞主线程。注意:Core Animation是直接作用在CALayer上

2015-01-25 21:44:22 474

原创 85-CZLayer的形变(平移,缩放,KVC缩放,旋转)

平移_redView.layer.transform=CATransform3DMakeTranslation(150, 150, 0);缩放普通缩放_redView.layer.transform=CATransform3DMakeScale(0.5, 0.5, 1);KVC快速缩放(常用)//参数:@0.5缩放比例,forKeyPath:进行什么操作—>tran

2015-01-25 21:43:20 396

原创 84-CALayer

CALayer1.什么CALayer1>在创建UIView对象时,UIView内部会自动创建一个图层(即CALayer对象),通过UIView的layer属性可以访问这个层@property(nonatomic,readonly,retain) CALayer *layer; 2>结论:UIView本身不具备显示的功能,是它内部的层才有显示功能,而它内部的层就是CALayer对

2015-01-25 21:42:47 377

原创 83-随机生成颜色

//随机生成颜色-(UIColor *) randomColor{    CGFloat r=arc4random_uniform(256) / 255.0;    CGFloat g=arc4random_uniform(256) / 255.0;    CGFloat b=arc4random_uniform(256) / 255.0;       

2015-01-25 21:42:33 312

原创 82-保存图片到手机相册

/***  保存图片到手机相册 UIImageWriteToSavedPhotosAlbum**  @param image              要保存的图片*  @param completionTarget   谁执行保存完成回调的方法(一般为self)*  @param completionSelector 保存完成回调的方法(必须调用系统提供的方法:如下)* 

2015-01-25 21:40:50 384

原创 81-从手机相册中读取照片

//1.创建照片选择器(控制器)UIImagePickerController *pickerVc = [[UIImagePickerController alloc] init];    //2.设置相册的数据源//模拟器pickerVc.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;//真机

2015-01-25 21:40:20 365

原创 80-手势解锁

//  LockView.m//  手势解锁//  界面搭建结构://  在View上放一个imageView,放置背景图片//  在背景图片imageView上在放一个imageView,用来放置按钮,即LockView#import "LockView.h"@interface LockView ()//记录当前移动的点@property (nonato

2015-01-23 00:07:57 399

原创 79-图片擦除(纯代码)

//  ViewController.m//  图片擦除(纯代码)//  如果想要要通过storyboard拖拽方式操作,拖两个imageview//  其中用于做擦除操作的要连线,并给其拖一个手指移动的手势#import "ViewController.h"@interface ViewController () //保存用于做擦除操作的图片@property

2015-01-22 21:56:31 597

原创 79-图片裁剪(自定义区域大小)

////  ViewController.m//  图片裁剪(自定义区域大小)#import “ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *imageView;//记录开始点@property (nonatom

2015-01-22 21:55:26 420

原创 78-屏幕截屏(截全屏)

//  ViewController.m//  屏幕截屏(截全屏)//       想点击按钮屏幕截屏就拉一个按钮,在按钮事件里面写#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [supe

2015-01-22 21:55:15 357

原创 77-图片水印 (给图片添加自定义水印)

//  ViewController.m//  图片水印 (给图片添加自定义水印)#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];        

2015-01-22 21:54:31 500

原创 76-圆形裁剪(指定图片裁剪为圆形),添加UIImage分类,两个类方法,实现圆形裁剪

//  UIImage+cilcleImage.m//  圆形裁剪,常用于设置头像#import "UIImage+cilcleImage.h"//给UIImage添加分类,两个类方法,实现圆形裁剪@implementation UIImage (cilcleImage)/** *  头像圆形裁剪(周围带圆环) * *  @param borderW

2015-01-22 21:53:33 518

原创 75-多控制器补充:Modal

多控制器补充:Modal1.除了push之外,还有另外一种控制器的切换方式,那就是Modal2.任何控制器都能通过Modal的形式展示出来3.Modal的默认效果:新控制器从屏幕的最底部往上钻,直到盖住之前的控制器为止4.Model的传值和Push一样5.Modal的具体操作1>以Modal的形式展示控制器- (void)presentViewCon

2015-01-22 08:05:28 374

原创 74-tableView的使用注意

tableView的使用注意1.如果一个tableView是导航控制器子控制器的view,默认就会添加64的额外滚动区域,目的让tableView的内容不被导航条遮住2.如果当前tableview控制器是静态单元格,静态单元格描述的组和行就已经固定死了tableView里面显示多少组多少行,那么如果自定义tableView,返回的组或者行只能少于,不能多于。3.使用tabl

2015-01-22 08:05:05 342

原创 73-UITabBarController(主流框架的搭建)

UITabBarController1.UITabBar的高度:49px2.UITabBar的使用步骤1>初始化UITabBarController2>设置UIWindow的rootViewController(根控制器)为UITabBarController3>根据具体情况,通过addChildViewController方法添加对应个数的子控制器3.UITa

2015-01-21 22:24:54 390

原创 72-数据存储(数据持久化)

数据存储(数据持久化)1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data2.应用沙盒1>每个iOS应用都有自己的应用沙盒,应用沙盒就是应用的文件夹,与其他文件系统隔离。2>应用必须待在自己的沙盒里,其他应用不能访问该沙盒

2015-01-21 22:20:50 421

原创 71-NSAttributedString头文件描述(翻译)

/* 字符属性  字符属性可以应用于 attributed string 的文本中。  NSString *const NSFontAttributeName;(字体)  NSString *const NSParagraphStyleAttributeName;(段落)  NSString *const NSForegroundColorAttributeNa

2015-01-21 12:42:23 529

原创 70-Quartz2D的具体使用(画线,三角形,矩形,圆弧,扇形,重绘(下载提示条),画饼图,定时器(雪花下落),模仿系统的控件,矩形变换)

1.画线1>添加一根线直接addLineToPoint//拼接路径UIBezierPath *path=[UIBezierPath bezierPath];[path moveToPoint:CGPointMake(50,50)];[path addLineToPoint:CGPointMake(100, 100)];2>因为路径是拼接的,默认下一条线的起点是上一条线的

2015-01-21 12:41:43 1244

原创 69-Quartz2D

Quartz2D1.Quartz2D简介1>什么是Quartz2D:二维的绘图引擎2>什么是二维:平面3>什么是引擎:经过包装的函数库,方便开发者使用                Quartz2D就可以说成苹果帮程序员封装了一套绘图的函数库4>Quartz2D同时支持iOS和Mac系统:(跨平台开发)用Quartz2D写的代码,既可以运行在iPhone上,也可

2015-01-21 12:40:52 382

空空如也

空空如也

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

TA关注的人

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