自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Nick的专栏

小白的坎坷路

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

原创 iOS开发Xcode断点调试技巧

概括的来说断点调试可分为一下3种:1、普通断点,单步调试2、条件断点和忽略特定的次数3、通过LLDB命令来控制断点的行为示例如下:1、代码var j = 10for i in 1...9{        NSLog("i value is %d",i);    NSLog("j value is %d",j);}2、普通断点调

2016-03-10 18:04:20 6266

原创 Swift Release模式下屏蔽NSLog()

1、首先在Build Settings中找到 Swift Compliler-Custom Flags,并添加以下参数 -DDEBUG参数,如下图:2、创建Log.swift文件并实现下面的函数#if DEBUG    func NKLog(message: String){        NSLog(message)    }#else

2016-03-03 16:15:13 1150

原创 iOS中NSlog重定向到文件

1、应用场景:对于真机,日志没法保存,不好分析问题。所以有必要将日志保存到应用的Docunment目录下,这样才能取出分析。2、相关知识:日志输出,分为c的printf和标准的NSLog输出,printf会向标准输出(sedout)打印,而NSLog则是向标准出错(stderr),我们需要同时让他们都将日志打印到一个文件中。 例子: freopen("xx.log","

2016-03-03 16:09:57 3820 1

转载 AFNetworking 3.0迁移指南

AFNetworking是一款在OS X和iOS下都令人喜爱的网络库。为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持。如果你的项目以前使用过这些API,建议您立即升级到基于 NSURLSession 的API的AFNetworking的版本。本指南将引导您完成这个过程。本指南是为了引导使用AFNetwor

2015-12-29 11:02:53 465

转载 CocoaPods安装使用及配置私有库

声明:本文转自:http://www.exiatian.com/cocoapods安装使用及配置私有库/ 忆夏天的博文如何安装?1.安装ruby环境,添加淘宝ruby镜像$ gem sources --remove https://rubygems.org///等有反应之后再敲入以下命令$ gem sources -a http://ruby.taoba

2015-12-29 10:36:41 664

原创 UIMenuContnroller的使用

UIMenuController顾名思义就是用来展示菜单,但非控制器,其继承于NSObject。如下图的样式使用UIMenuController有以下几个前提:1. Menu所处的View必须实现 – (BOOL)canBecomeFirstResponder, 且返回YES2. Menu所处的View必须实现 – (BOOL)canPerformAction:wi

2015-12-21 15:08:23 698

原创 objective-c纯代码搭建抽屉项目(SWRevealViewController)

最近因项目需要,自己写了一个采用MVC模式的oc纯代码的抽屉模板,so总结分享一下。如果哪里有错误或者不正规的敌方还请各位大神指正。废话不多说,开始上干货。1、新建项目准备工作首先:删除launchScreen.storyboard 和Main.storyboard,并作相应的配置。(1)在ASsets.xcassets下创建LaunchImage并设置对应的启动图(2)进行一

2015-12-18 17:00:58 1703

原创 git使用详解 terminal命令/sourceTree/Xcode

说到git,必须要先谈一下版本控制。什么是版本控制?我为什么要关心它呢?版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。大致可以分为三大类:本地版本控制系统其中最流行的一种叫做 rcs,它的工作原理基本上就是保存并管理文件补丁(patch)。文件补丁是一种特定格式的文本文件,记录着对应文件修订前后的内容变化。所以,根据每次修订后的补丁,rcs 可以通过不断

2015-11-22 03:23:52 8113

原创 App检测版本更新 iOS

在前一段时间,苹果的审核标准有所变化:在程序中不能出现检测版本更新的入口。看到这个信息的时候以为在app中不能有检测更新或强制更新的功能,最后发现自己还是犯了望文生义的大错误。苹果建议采用系统的自动更新,但在系统的设置里可以把自动更新关掉。这就导致app有新版本,不能及时被用户更新,所以检测版本和版本更新的功能还是必不可少的。但是一定不要有检测更新的入口呦,如button之类的。否则被苹果给拒了就

2015-11-04 10:01:13 4360

原创 UIImagePickerController 选照片 拍照 录视频

最近研究了一下UIImagePickerController,发现以前的写的项目中用UIImagePickerController做的换头像的功能存在很多的不规范之处。so,重新整理一下,不为别的只为了让自己以后更规范,当然更方便啦。功能:三个按钮分别为拍照、录制视频和访问相册具体实现如下:类必须遵守UINavigationControllerDelegate,UIImagePicke

2015-11-02 19:35:30 703

原创 自定义NavigationController 的Push 和 Pop过渡动画

现在开发ios项目有两种或者可以说三种方式:(1)纯代码    纯代码加Xib(2)storyboardso,自定义过渡动画的方式也有两种,但是动画的实现都是一样的。先说一下过渡动画的实现方式:一共有三种说白了都是控制View的CATransition动画。第一种:代码如下:NKYellowViewController *dst = [[NKYell

2015-10-30 15:43:14 6263

转载 iOS9下App Store新应用提审攻略

公子在第十讲中提到应用更新时需要注意的细节和苹果便捷通道的利用。今天,公子将进一步深扒iTunes Connect的面纱,为大家呈现新应用在提审前需要准备的资料,并进一步分享App Store邮箱功能。一 提审前备资料众所周知,在iTunes Connect后台上传新应用时需要填写各种纷繁复杂的资料,看似复杂,如果能在新应用上传前搞清楚各项资料,并予以备齐,提审便相对简单很多。

2015-10-29 10:15:27 1128

原创 录制音频(AVAudioRecorder)for iOS

由于本人没有进行过专门的录制音频的项目开发,所以这里只是能完成一个可以录音的小demo。so,首先说一下苹果的API,AVFounditon.framework下的AVAudioRecorder。AVAudioRecorder和AVAudioPlayer类似,功能类似于一个录音器,使用AVAudioRecorder录制视频十分简单。一般需要三步:1、创建AVAudioRecorder对

2015-10-28 16:10:30 2252

原创 利用runtime实现自定义对象归档总结

今天在cocoachina中看到《利用runtime实现自定义对象归档》,so 自己捣鼓了一下,记录如下:在前面的博客中,已经记录过自定义对象归档,详情请参照之前的博客:http://blog.csdn.net/xiaonaiping061/article/details/47952077。之前博客中讲解的自定义对象归档适用于对象属性较少的情况,但是面对属性比较多的情况,就需要在解档和归档函数

2015-10-27 16:46:44 804

原创 视频播放(MPMediaPlayerController,AVPlayer,AVPlayerViewcontroller) for iOS

和音频播放一样,ios也提供个很多的API。如mediaPlayer.framework下的MPMediaPlayerController、AVFounditon.framework下的AVPlayer和AVKit下的AVPlayerViewcontroller。下面先看一下下图有上面的三幅图可以看出,MPMovieplayerController已经在ios9.0中被

2015-10-27 15:13:59 9637

原创 音频播放(System Sound Services、MPMusicPlayerController、AVAudioplayer) for IOS

对于音频的播放ios提供了多种API,如AudioToolbox.framework下的System Sound Services、AVFoundation.framework下的AVAudioplayer和MediaPlayer.framework下的MPMusicPlayerController。   音频的播放一般分为两种:音效播放和音乐播放。音效一般为比较短,并且对音乐的控制要

2015-10-26 14:22:23 3685

转载 获取APP的Launch Image

启动图(LaunchImage)的管理其实在iOS开始中算比较简单的了 尤其是Xcode引入了xcassets之后 完全是傻瓜式的操作 但是有的时候我们还是需要在Launch Image上做文章LaunchImage在APP初始化完之后会立即消失并显示APP的界面 但是有的时候我们不希望它这么快就消失(比如有的人希望有个过渡效果 有的人希望等某些设置或者数据加载完之后再消失) 这也很简

2015-10-22 17:31:30 555

转载 整理 iOS 9 适配中出现的坑(图文)

声明:本文转载自http://www.cocoachina.com/ios/20151016/13715.html本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的开发者所需要知道的 iOS 9 SDK 新特性。9月17日凌晨,苹果给用户推送了iOS9正式版,随着有用户陆续升级iOS9,也就逐渐的衍生出了一系列的问题,笔者也在赶忙为自己维护的App做

2015-10-16 10:05:36 629

转载 函数指针作为某个函数的参数及定义函数指针

声明:本文章来源于http://blog.csdn.net/lpp1989/article/details/7767109首先来看一下基本定义:1、一个变量的地址成为该变量的指针,即指针等于地址;2、*:指针运算符,声明一个变量是指针类型的变量;获取指针变量所指向的内容      &:取地址运算符,用来获取一个变量的地址一、 定义某一函数的指针类型:就像自定义数据类型一样,

2015-10-15 23:08:25 524

原创 浅谈CoreData For IOS

1、简介Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对象。在此数据操作期间,我们不需要编写任何SQL语句,这个有点类似于著名的Hibernate持久化框架,不过功能肯定是没有Hibernate强大的。简单地用下图描述下它的作用:

2015-10-14 23:43:12 437

转载 浅谈iOS中MVVM的架构设计与团队协作

本文Copy自青玉伏案的博客,博客地址:http://www.cocoachina.com/ios/20150122/10987.html今天写这篇文章是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正。本篇文章的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦~)。由于本人项目经验有限,关于架构设计方

2015-10-13 17:08:31 413

转载 带有pod的ios工程修改工程名

声明:本文大部分内容来自于以下网址,其余的部分是自己尝试的总结和补充。http://www.cocoachina.com/ios/20150104/10824.html   修改ios工程名http://blog.csdn.net/freedom2028/article/details/10244819  iOS工程中删除pod先来看修改ios工程名:前言:在iOS

2015-09-15 11:46:25 5121

原创 程序中的exit(1)、abort()、assert(0);

先来看一下程序的死亡方式:程序的死亡大致有三种:自然死亡,即无疾而终,通常就是main()中的一个return 0;自杀,当程序发现自己再活下去已经没有任何意义时,通常会选择自杀。当然,这种自杀也是一种请求式的自杀,即请求OS将自己毙掉。有两种方式:void exit(int status)和void abort(void)。他杀,同现实不同的是,程序家族中的他杀行径往往是由自己至亲完成的

2015-09-09 16:43:05 4755 1

原创 objective-c中的extern static const总结

先来看一下定义:1、静态变量 static什么是静态变量:从面向对象的角度触发,当需要一个数据对象为整类而非某个对象服务,同时有力求不破坏类的封装性,既要求此成员隐藏在类的内部,有要求对外不可见的时候,就可以使用static。 静态变量的优点:1、节省内存。静态变量只存储一处,但供所有对象使用。    2、它的值是可以更新的。    3、可提高时间效率。只要某个对象对静态变

2015-09-08 22:03:45 2015

原创 持久化存储 (SQLite)

SQLite 是iOS集成的一个轻量级的数据库。请注意:sqlite只是一个嵌入式的数据库引擎,实际上就是一个文件。不需要安装,启动服务等操作。1、Xcode6 导入libsqlite3.dylib,如图(和导入其他的库一样) ;libsqlite3总代表最近版本的SQLite3,所以选择libsqlite3.dylib就ok了2、常用函数:(1)  创建数据库函数:

2015-09-06 15:02:03 1634

转载 ios js oc相互调用(截获url的方式)(三)

声明:本文来自于http://www.cnblogs.com/ios8/p/ios-js-oc.html此解决方案原理:1、在ViewController.h中声明方法和成员变量,以及webView的委托: //  //  ViewController.h  //  JS_IOS_01  //  //  Created by IMAC on 14-2

2015-09-01 19:02:34 2900

转载 iOS js oc相互调用(JavaScriptCore)(二)

声明:本文copy自http://blog.csdn.net/lwjok2007/article/details/47058795接着上节我们讲到的iOS调用js下来我们使用js调用iOSjs调用iOS分两种情况一,js里面直接调用方法二,js里面通过对象调用方法首先我们看第一种,直接调用方法。其中用到了iOS的block

2015-09-01 18:40:17 777

转载 iOS js oc相互调用(JavaScriptCore)

声明:本文copy自http://blog.csdn.net/lwjok2007/article/details/47058101从iOS7开始 苹果公布了JavaScriptCore.framework 它使得JS与OC的交互更加方便了。下面我们就简单了解一下这个框架首先我导入framework方法如下点击Linked Fr

2015-09-01 18:38:10 698 1

转载 实用SQL语句大全

声明:本文来自于网络http://www.php100.com/html/webkaifa/database/Mysql/2012/0720/10713.html一、基础  1、说明:创建数据库  CREATE DATABASE database-name  2、说明:删除数据库  drop database dbname  3、说明:备份sql server  ---

2015-08-31 17:18:52 390

转载 sqlite字段类型

声明:本文copy自博客园-残星的博客,博客地址:http://www.cnblogs.com/mingforyou/archive/2013/02/19/2917122.html存储类(Storage Classes)如前文所述,SQLite在处理数据类型时与其它的数据库不同。区别在于它所支持的类型以及这些类型是如何存储、比较、强化(enforc)和指派(assign)。下面各节

2015-08-31 17:15:09 688

原创 Xcode6 StoryBoard页面跳转和传值

先来看下面的一副图:这幅图展示了segue的类型:Show根据当前屏幕中的内容,在master area或者detail area中展示内容。例如:如果app当前同时显示master和detail视图,内容将会压入detail区域。           如果app当前仅显示master或者detail视图,内容则压入当前视图控制器堆栈中的顶层视图。

2015-08-28 19:50:47 1536

原创 用户默认设置 Settings Bundle

Settings Bundle是应用程序中的一组特殊文件,用于告诉ios自带的settings应用,该应用程序希望通过Settings应用来收集程序参数。主要用于1、应用程序有少量的数据用于保存,并且数据的格式很简单,都是普通的字符串和标量类型的值(如:用户名和密码)2、应用程序的各种配置(如:是否打开音效,是否使用震动等)。好处:省去了程序员自己写页面,节省了开发时间。下

2015-08-26 14:44:47 1055

原创 ios自定义对象(或自定义数据类型)归档

*  归档是一种很常用的文件储存方法,几乎任何类型的对象都能够被归档储存(实际上是一种文件保存的形式),步骤如下 1、对象要遵守NSCoding协议  2、实现以下两个方法:    解档方法:        -(id)initWithCoder:(NSCoder *)aDecoder{}    归档方法:        -(voi

2015-08-24 16:16:39 4642

原创 Xcode6 app沙盒目录

从Xcode5 到Xcode 6 iOS应用的沙盒目录有所变化,基于Xcode5已经过时,所以这里就只介绍Xcode6 写的文件目录:1、下图展示了Xocde6中app的目录由上图可以看到Xcode6是通过 设备管理-》应用管理来组织文件的,在整个设备中存在不同操作系统的模拟器(通过GUID来命名),每个模拟器下有各自安装的应用(也是通过GUID来区分的),每个应用的data/co

2015-08-24 13:37:29 1310

原创 Xcode6 app国际化

关于ios应用的国际化,就不多说什么了!相关概念还是度娘比较专业,这里就直接上步骤了!/** *  国际化步骤(默认为英语环境)  * 1、创建新的工程并设计界面,如下图  * 2、在 工程-> PROJECT -> Info -> Localizations 里点击“+”增加多语言支持,如下图  //注意:最好在工程完成后,再进行语

2015-08-18 18:13:36 631

空空如也

空空如也

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

TA关注的人

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