自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

justinjing的专栏

iOS 开发专题

  • 博客(42)
  • 资源 (9)
  • 收藏
  • 关注

原创 全面解析Objective-C内存管理

前言初学objectice-C的朋友都有一个困惑,总觉得对objective-C的内存管理机制琢磨不透,程序经常内存泄漏或莫名其妙的崩溃。我在这里总结了自己对objective-C内存管理机制的研究成果和经验,写了这么一个由浅入深的教程。希望对大家有所帮助,也欢迎大家一起探讨。此文涉及的内存管理是针对于继承于NSObject的Class。一 基本原理Objective-C的内存管理机制

2011-11-26 12:14:22 1155

转载 Objective C内存管理之理解autorelease

这里打算写一些我对Iphone开发内存管理的理解。是建立在读者对Objective C的内存管理已经有一定理解的基础上,内容将包括实践准则,autorelease原理剖析,内存泄露的调试等。如果您对Objective C内存管理不太了解,建议先读一下Vince Yuan的这个教程。在进行IPhone开发时, 内存管理是个相对比较难以理解的东西。Objective-C 使用了一种介于C#

2011-11-25 00:43:29 3978

转载 iOS5编程--下载帮助到本机

在安装好Xcode4.2后,请按Command+,或者在菜单Xcode下面选择Preferences...在上面的界面上选择Downloads,选择第二个Documentation,刚安装好的Xcode中并没有我上面图中这么多的内容,选中Check for and install updates automatically,并且点击Check and Install N

2011-11-25 00:40:55 877

转载 iOS5编程 -- main函数研究

Xcode4.2之前的main函数如下:int main(int argc, char *argv[]){    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];    int retVal = UIApplicationMain(argc, argv, nil, nil)

2011-11-25 00:40:07 1106

转载 ARC在工程上的相关设置

在创建工程的时候,我们可以指定工程是否使用ARC技术,如下图选中表示支持ARC,在Beta5以前的版本中,不提供这个选项,非常麻烦。如果是你拿到的工程,那么可以通过设置来改变,如下图所示如果不容易找到,可以在设置的右上角输入ARC做一个过滤。

2011-11-25 00:39:00 950

转载 ARC(Automatic Reference Counting )技术概述

此文章由Tom翻译,首发于csdn的blog,任何人都可以转发,但是请保留原始链接和翻译者得名字。多谢!Automatic Reference Counting (ARC) 是一个编译器的技术,利用此技术可以简化Objective-C编程在内存管理方面的工作量。这里我把此技术翻译为自动内存计数器管理技术,下图是使用和不使用此技术的Objective-C代码的区别。

2011-11-25 00:34:20 1244

转载 OpenGL 纹理

大概步骤:1.创建纹理对象,并为他指定一个纹理.2.确定纹理如何应用到每个像素上.3.启用纹理贴图4.绘制场景,提供纹理和几何坐标过滤:由于我们提供的纹理图像很少能和最终的屏幕坐标形成对应,大小不同,所以需要设置过滤项目.允许我们进行插值或者匀和,指定放大缩小的函数.glTexParameter*(),使用过滤模式GL_NEAREST那么纹理单位最邻近的将被

2011-11-25 00:30:56 10841

原创 iphone 晃动检测方法

AppDelgate.h- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{    application.applicationSupportsShakeToEdit = YES;}AppDelgate.m文件

2011-11-25 00:15:42 3160

转载 ios 画图总结

0 CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文1 CGContextMoveToPoint 开始画线2 CGContextAddLineToPoint 画直线4 CGContextAddEllipseInRect 画一椭圆4 CGContextSetLineCap 设置线条终点形状4 CGConte

2011-11-25 00:07:27 23624 1

原创 UIScrollView的属性总结

属性作用CGPoint contentOffSet监控目前滚动的位置CGSize contentSize滚动范围的大小UIEdgeInsets contentInset视图在scrollView中的位置iddelegate设置协议BOO

2011-11-25 00:03:25 5934

转载 ios5 中文键盘高度变高覆盖现有ui问题的解决方案

背景:  ios5之前,iphone上的键盘的高度是固定为216.0px高的,中文汉字的选择框是悬浮的,所以不少应用都将此高度来标注键盘的高度(包括米聊也是这么做的)。  可是在ios5中,键盘布局变了,尤其是中文输入时,中文汉字选择框就固定在键盘上方,这样就使得原本与键盘紧密贴合的界面视图被中文汉字选择框给覆盖住了。一方面影响了界面的美观,另一方面,如果被覆盖的部分就是文本输入框

2011-11-23 22:38:12 1610

转载 Core Plot SDK的用法

接前一篇博文《开源框架Core Plot的使用》。如果使用了Core Plot标准Mac安装包进行安装,使用起来有一些变化。其实,如果你注意到安装器的最后一个界面,这里已经有一个如何使用的介绍了:To add the Core Plot SDKs to an iOS Project: 1. Add to your project's .PCH file: #import

2011-11-22 22:47:43 1172

转载 开源框架Core Plot的使用

iPhone下的图形框架并不是很多。其中比较知名的就两个s7graphview和Core Plot。巧的是两个都是Google的。前者使用简单,但功能单一,只能画曲线图。后者是开源项目,项目仍在不断更新中,用起来可就复杂多了,而且各个版本会有差异,包括属性、方法,甚至是类名都有改变。关于Core Plot使用的中文网上资料,不是缺乏,而是根本没有。唯一的一篇介绍得比较详细的文章是“Using

2011-11-22 22:44:54 932

转载 封装自己的静态库和应用

由于iPhone控件的极度匮乏和自定义组件在重用上的限制,在过去的项目中我们积累了大量的“纯代码”组件——因为IB本身的限制,我们无法把这些组件封装为IB组件库(本来我们想通过分发xib文件的方式重用这些组件,但最终发现这根本不可能,苹果的Plug-in编程不支持iPhone)。最终我们想到了静态库。虽然这仍然还是一种比较原始的复用方式,但起码我们可以隐藏组件的源代码。下面, 我们使用iP

2011-11-22 22:40:53 1711 1

转载 UIApplication ,UIApplicationDelegate 知识总结

在开发过程中我们需要一些全局对象来将程序的各个部分连接起来,这些全局对象中最重要的就是UIApplication对象。但在实际编程中我们并不直接和UIApplication对象打交道,而是和其代理打交道。UIApplication 是iPhone应用程序的开始并且负责初始化并显示UIWindow,并负责加载应用程序的第一个UIView到UIWindow窗体中。 UIAppl

2011-11-22 18:09:37 1956

转载 UINavigationBar的返回按钮的title改为back

很多时候我们使用navigationController时由于上一个navigationController.title的字符串太长,而导致下一个界面的返回按钮变的很长也很难看,为了美观我们我们可以把返回按钮的title改为back,或者是用自定义的图片。     1.把返回按钮的title改为back:这里要特别说明一下,需要在上一个viewController里面写上以下代码。若是在当

2011-11-22 17:38:12 8395 2

原创 区域化 NSLocale Class

与CFLocale自由转换.可以通过注册 NSCurrentLocaleDidChangeNotification 通知来获得区域位置改变消息生成– initWithLocaleIdentifier:+ systemLocale// 操作系统的,最初始的区域?+ currentLocale// 当前用户设定区域,肯能是缓存的+ autoupdatingCurrentLoca

2011-11-20 20:51:58 5601

原创 ios 网络电话开发 (Voip Client For iPhone )

现在网络电话流行,例如skype ,viber  ,whatsapp。。。但是你们知道他们怎么做的吗?下面看看我的详细步骤把,哈哈!第一步:在Mac OS桌面新建文件夹,最好不要带中文路径名。新建个目录如:pjsip,解压附件(见链接),pjproject-2.0-alpha2.tar.bz2 (mac os)pjproject-2.0-alpha2.zip(windows)

2011-11-14 15:34:51 23565 4

转载 为UIWebView实现离线浏览

智能手机的流行让移动运营商们大赚了一笔,然而消费者们却不得不面对可怕的数据流量账单。因为在线看部电影可能要上千块通讯费,比起电影院什么的简直太坑爹了。所以为了减少流量开销,离线浏览也就成了很关键的功能,而UIWebView这个让人又爱又恨的玩意弱爆了,居然只在Mac OS X上提供webView:resource:willSendRequest:redirectResponse:fromDat

2011-11-14 11:43:40 1940 2

转载 如何优化UITableView性能

在iOS应用中,UITableView应该是使用率最高的视图之一了。iPod、时钟、日历、备忘录、Mail、天气、照片、电话、短信、Safari、App Store、iTunes、Game Center⋯几乎所有自带的应用中都能看到它的身影,可见它的重要性。然而在使用第三方应用时,却经常遇到性能上的问题,普遍表现在滚动时比较卡,特别是table cell中包含图片的情况时。实际上只要针对性

2011-11-14 11:32:33 3023

转载 利用预渲染加速iOS设备的图像显示

最近在做一个UITableView的例子,发现滚动时的性能还不错。但来回滚动时,第一次显示的图像不如再次显示的图像流畅,出现前会有稍许的停顿感。于是我猜想显示过的图像肯定是被缓存起来了,查了下文档后发现果然如此。后来在《Improving Image Drawing Performance on iOS》一文中找到了一些提示:原来在显示图像时,解压和重采样会消耗很多CPU时间;而如果预

2011-11-14 11:30:13 1217

转载 UITableView +下拉刷新(Pull-refresh)

给 UITableView 添加“下拉刷新(Pull-refresh)”属性第一次接触下拉刷新是在 Three20  的开源 框架看到的, 还有一些应用,如 人人网,微博 。。。效果例如下面的图片:亲爱的,我还是有些不忍心,不过事情的经过是这样的:Cocoa Touch 的 官方 SDK 里,压根就没实现这个 pull & refresh 的功能。恩,这事真不是乔布斯手下干的。

2011-11-13 15:16:56 2746

转载 ios选择相册图片并保存

.h中: Obj-c代码    .m中 Obj-c代码  - (IBAction)selectPhoto {      NSLog(@"%@",NSStringFromSelector(_cmd));      if ([UIImagePickerController isSourceTypeAvailable:UII

2011-11-10 00:29:24 5044

转载 IPHONE实景导航开发总结(一)

1. 在摄像头捕获的画面上添加一个自定义的view。 使用iphoneSDK 3.1的新API:UIImagePickerController的新属性cameraOverView来添加一个自定义的view。 C代码     - (IBAction)getCameraPicture: (id)sender {      UIImagePickerContr

2011-11-10 00:28:08 1744

转载 iphone UISwipeGestureRecognizer ---手指动作

tap是指轻触手势。类似鼠标操作的点击。从iOS 3.2版本开始支持完善的手势api:tap:轻触long press:在一点上长按pinch:两个指头捏或者放的操作pan:手指的拖动swipe:手指在屏幕上很快的滑动rotation:手指反向操作这为开发者编写手势识别操作,提供了很大的方便,想想之前用android写手势滑动的代码(编写android简单的

2011-11-10 00:26:21 1676

转载 iphone 如何获取iphone的硬件版本以及系统信息

获取iphone的系统信息使用[UIDevice currentDevice],信息如下:[[UIDevice currentDevice] systemName]:系统名称,如iPhone OS[[UIDevice currentDevice] systemVersion]:系统版本,如4.2.1[[UIDevice currentDevice] model]:The

2011-11-10 00:24:37 1478

转载 iphone开发之获取IMEI,serialnumber和系统背光灯亮度

对于iOS的理解,应该来是就是一个拥有比较完整的内核的BSD UNIX系统,其实很多的东西都是可以问系统的,并不是必须通过又爱又恨的Frameworks的。这里将介绍如何在iphone下面,通过系统的底层字节获取系统背光灯亮度和设备的IMEI。 这是UIDevice的Catagary,需要手动添加IOKit.frameworks(如果你找不到,那算了)。 代码部分 Thanks

2011-11-10 00:23:17 2462

转载 ios用 UIImageView实现图片幻灯片

NSArray *myImages = [NSArray arrayWithObjects:    [UIImage imageNamed:@"Image1.png"],    [UIImage imageNamed:@"Image2.png"],    [UIImage imageNamed:@"Image3.png"],    [UIImage imageNamed:@"mag

2011-11-10 00:16:56 5987

转载 iphone Core Telephony

iOS 4.0 的官方 API 裡頭,多了一個叫做 Core Telephony 的 framework;一直以來 Core Telephony 都是 private API,現在開放出來,但是從文件來看,裡頭根本沒有幾行,既沒有告訴你應該怎麼用,也沒有範例,你從 framework 裡頭寥寥四個 class 的 header 中,也搞不清楚,究竟可以把這個東西用在什麼用途上。目前只知道可

2011-11-10 00:14:18 1286

转载 iphone SQLite3使用总结

SQLite3的确很好用。小巧、速度快。这些天正在研究它,将它移植到ARM系统里面,又有一些收获,这里把我对sqlite3的研究列出来,以备忘记。【其中有摘抄自互联网】SQLite3提供的是一些C函数接口,你可以用这些函数操作数据库。通过使用这些接口,传递一些标准sql语句(以char *类型)给SQLite3函数,SQLite3就会为你操作数据库。SQLite3跟MS的a

2011-11-10 00:09:30 3584

转载 iphone 开发开放库-ASIHTTPRequest类库简介和使用说明

官方网站: http://allseeing-i.com/ASIHTTPRequest/ 。可以从上面下载到最新源码,以及获取到相关的资料。使用iOS SDK中的HTTP网络请求API,相当的复杂,调用很繁琐,ASIHTTPRequest就是一个对CFNetwork API进行了封装,并且使用起来非常简单的一套API,用Objective-C编写,可以很好的应用在Mac OS X系统和iO

2011-11-10 00:05:50 4774

转载 iphone开发-SQLite数据库使用

我现在要使用SQLite3.0创建一个数据库,然后在数据库中创建一个表格。首先要引入SQLite3.0的lib库。然后包含头文件#import 【1】打开数据库,如果没有,那么创建一个sqlite3* database_;-(BOOL) open{       NSArray *paths = NSSearchPathForDirectoriesInDomain

2011-11-10 00:03:41 1051

转载 UIImagePickerController之死因

UIImagePickerController是我们最常用的组件之一,用它可以实现照相,选图片的功能。但是在照像的时候,如果后台开有很多应用,经常会出现crash的情况,是因为照出来的相片像素太高,一般是4M左右,照一张就会有4M内存占用,于是经常会出现memory warning, 然后系统回收内存,就使我们的应用crash。解决方法就是,在UIImagePickerController

2011-11-10 00:01:16 2281

转载 iphone 通过获取IMSI判断运营商

IMSI 共有 15 位,其结构如下:   MCC+MNC+MSIN ,( MNC+MSIN=NMSI )   MCC : Mobile Country Code ,移动国家码, MCC 的资源由国际电联( ITU )统一分配和管理,唯一识别移动用户所属的国家,共 3 位,中国为 460;   MNC:Mobile Network Code ,移动网络码,共 2 位,中国移动 TD 系

2011-11-09 23:57:20 4022 1

转载 iPhone应用程序中App目录结构

了解iPhone应用程序中App目录结构是本文要介绍的内容,不多说,直接进入内容。iPhone的App的目录结构如下:对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox).一个app发布到iPhone上后,它得目录结构如下:1、其中得app root可以用 NSHomeDirectory() 访问到;2、Document

2011-11-09 23:55:25 5620

转载 Core Data 教程(3): 入门指南

Core Data “Failed Banks” 模式表在iPhone所有数据存储的方法里面,Core Data是重要数据存储的最佳选择。它能降低你应用的内存开销,提升响应速度,并把你从繁琐的代码中解脱出来。然而,学习Core Data之路异常久远。不过这也是这一系列教程的由来 – 让你快速掌握Core Data基础知识。作为该系列教程的第一部分,我们将为我们的对象建立

2011-11-09 23:54:22 3679

转载 Core Data 教程(2): 如何预载/导入已有的数据

这是系列教程的第二部分,有助于你加快掌握基本的Core Data内容。在系列教程一中,我们为对象建立了可视化数据模型,运行了快速肮脏测试并勾在一个表视图(table view)中来显示。而在这个教程,我们将讨论如何把已有的数据导入或者预先载入到Core Data里面,这样我们的应用开始时会有一些好的默认数据。在系列教程的最后部分,我们将讨论如何使用NSFetchedResult

2011-11-09 23:53:37 3043

转载 Core Data 教程: 如何使用NSFetchedResultsController

为什么要采用NSFetchedResultsController?迄今为止,我们现在的处境跟当初用SQLite3的时候一样。然而,我们不需要写如此多的代码(注意一下FailedBankDatabase类中那段缺失的原始SQL语句代码),添加诸如插入/删除之类的操作也很简便。有一项显著的便利性是用Core Data才能体现出来的:使用NSFetchedResultsCon

2011-11-09 23:52:52 4289 2

转载 类方法、实例方法、静态方法(重要)

类方法,也称静态方法,指的是用static关键字修饰的方法。此方法属类本身的方法,不属于类的某一个实例(对象)。类方法中不可直接使用实例变量。其调用方式有三种:可直接调用、类名.方法名、对象名.方法名。实例方法指的是不用static关键字修饰的方法。每个实例对象都有自身的实例方法,互相独立,不共享一个。其调用方式只能是对象名.方法名。 用修饰符static声明的方法为静态方法,不用修饰符sta

2011-11-09 23:50:21 2928

转载 IAP( 应用程序內购买): 完全攻略

原文:http://troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/原帖地址:http://www.cocoachina.com/bbs/read.php?tid=69165&fpage=4参考:http://www.cocoachina.com/bbs/read.php?tid-11357.html

2011-11-09 23:47:29 3187 1

3D Touch demo

详细 介绍了 如何 使用 3D Touch demo 是 iOS9 新特性。

2015-12-06

ObjectC & Swift

ObjectC 和 Swift 的相互调用

2015-08-18

new store house

tableview & customcell ,模仿 Store House 。并且有动画

2015-03-17

Store House

tableview demo

2015-03-17

ios8 WKWebView

ios8新特性,WKWebView 主要讲了WKWebView 的一些基本用法。

2015-03-04

ios8 TouchID

ios8新特性 TouchID的学习。并包含了优化点。

2015-03-04

lua开发ios native app

lua开发ios native app,有详细的lua 用法,例如uibutton,uilabel等等

2015-02-28

ios RAC 框架 demo

RAC初学者的 福音,很简单的RAC学习框架。一看就会。

2015-01-19

Appledoc 生成demo

如何生成appledoc。里面有源代码下载,可以参考

2015-01-19

空空如也

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

TA关注的人

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