
iphone平台相关问题
zerocnd
敲键盘的
展开
-
iPhone SDK中多线程的使用方法以及注意事项
<br /> 一般情况下都是使用 管理者/工人模型, 这里,我们使用iPhone SDK中的 NSThread 来实现它。<br /> <br /> 创建一个按钮,现在开始线程部分的代码,首先当 button 被按下的时候,创建新的线程.<br /><br />- (IBAction) startThreadButtonPressed:(UIButton *)sender <br />{<br /> [NSThread detachNewThreadSelecto原创 2011-05-25 16:48:00 · 1383 阅读 · 0 评论 -
自定义MPMoviePlayerController
最近由于项目原因需要自定义MPMoviePlayerController,在网上没有找到找了很长时间没找到解决办法,最后逼不得已打印出来了player的所有子视图,分析出player的试图结构如下图。 上图中从上到下是视图的层次,上面的是父视图,下面的是其紧挨上层的子视图。同一层从左到右的顺序是视图在父视图的subviews中的排列顺序。括号内是说明视图的类型。实际上自定义时只用到转载 2012-07-27 14:26:21 · 3648 阅读 · 4 评论 -
NSNotificationCenter的一个问题
NSNotificationCenter在ios用的比较多,实际上就是一个观察者的模式,但是今天在使用中碰到了一个问题,特此纪录下, [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:nil];原创 2012-08-08 18:20:03 · 1393 阅读 · 0 评论 -
深入浅出 Cocoa 多线程编程之 block 与 dispatch quene
block 是 Apple 在 GCC 4.2 中扩充的新语法特性,其目的是支持多核并行编程。我们可以将 dispatch_queue 与 block 结合起来使用,方便进行多线程编程。本文源代码下载:点击下载1,实验工程准备在 XCode 4.0 中,我们建立一个 Mac OS X Application 类型的 Command Line Tool,在 Type 里面我们选择 F转载 2012-07-16 15:41:38 · 530 阅读 · 0 评论 -
应用提高图像与动画性能的一些方法
238 iOS App Performance Graphics and Animations1. UIImageView 是由CALayer, UIImage->CGImage 构成的CGImage 在加载的时候不会解码图像,只有在第一次用的时候才会解码图像。所以,尽量用UIImageView 不要直接把图像画在 drawrect:2. Xcode 提前为PNG做转载 2012-07-16 15:50:48 · 1210 阅读 · 0 评论 -
NSRunLoop 概述和原理
1.什么是NSRunLoop?我们会经常看到这样的代码:- (IBAction)start:(id)sender{pageStillLoading = YES;[NSThread detachNewThreadSelector:@selector(loadPageInBackground:)toTarget:self withObject:nil];[progress转载 2012-07-03 16:00:52 · 1220 阅读 · 0 评论 -
iOS系统Crash文件分析方法
iOS系统Crash文件分析方法 Xcode 4.3的symbolicatecrash的位置和老版本的不一致了。/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Version转载 2012-07-04 10:58:06 · 3860 阅读 · 0 评论 -
iphone ios XCode4如何调试程序忽然崩溃而找不到挂的代码
XCode4设置不太一样: 在Edit–>Scheme里面 找到Arguments(在xcode 4.2中,在菜单 product->edit scheme中)把下面3个值设置成YESNSAutoreleaseFreedObjectCheckEnabledNSZombieEnabledNSDebugEnabled另外转载2篇调试EXC_BAD_ACCE转载 2012-07-04 11:09:09 · 1980 阅读 · 0 评论 -
runloop
现在说说runloop为何会成为cocoa开发中迷惑的点。因为很多新手没有从动态角度看它。 首先回想一下第2点介绍的runtime的概念。 接着我出一个题思考一下。 现在我有一个程序片段如下: 复制代码- (void)myThread:(id)sender{ NSAutoreleasePool *pool=[[NSAutoreleasePool allo转载 2012-04-19 13:38:53 · 1954 阅读 · 0 评论 -
关于iOS App的切图
图形用户界面中的图形有两种实现方式,一种是用代码画出来,比如Quartz 2D技术,狠一点有OpenGL ES,另一种则是使用图片。 代码画的方式比较耗费程序员脑力,CPU或GPU; 图片则耗费磁盘空间,会增加app的体积.一般的app我们会偏重于使用图片来构建用户界面. 设计师一般会使用PS来设计界面,所以在直接使用之前,有一个PSD到png的切图(Image Slicing)过程.下面转载 2012-10-14 19:55:37 · 11705 阅读 · 0 评论 -
iPhone开发创建连续动画案例
iPhone开发创建连续动画案例是本文要介绍的内容,主要详细介绍了在iphone开发中连续动画的实现 。来看详细内容 。在iphone开发中,我们有些时候需要创建连续的动画效果,使用户体验更好 。 连续动画就是一段动画运行完毕后调用另一段动画,一定要保证两段动画没有重叠,本文不打算使用CAKeyframeAnimation建立连续的动画块,虽然使用CAKeyframeAnimation转载 2012-11-02 14:23:18 · 973 阅读 · 0 评论 -
如何提高tableView的性能
a、重用cell 我们都知道申请内存是需要时间,特别是在一段时间内频繁的申请内存将会造成很大的开销,而且上tebleView中cell大部分情况下布局都是一样的,这个时候我们可以通过回收重用机制来提高性能。 b、避免content的重新布局 尽量避免在重用cell时候,对cell的重新布局,一般情况在在创建cell的时候就将cell布局好。 c、使用不透明的转载 2013-04-24 16:53:46 · 764 阅读 · 0 评论 -
Grand Central Dispatch (GCD)的介绍和使用
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。一个任务可转载 2013-02-27 15:29:02 · 483 阅读 · 0 评论 -
caf文件头信息
caf文件的头信息大概是4092(测试了几个文件都是这个值)caf转为mp3,要跳过文件头,fseek(pcm, 4092, SEEK_CUR); 当然也可以程序来读取头信息,网上也有这段代码,可以拿来用, 目前录音以后转换为mp3格式,大概1s1k,比微信稍微大一些,都基本上也满足了需求。原创 2013-02-22 18:09:50 · 1854 阅读 · 1 评论 -
加强代码的强壮性,AVAudioRecorder的一个小问题
最近用AVAudioRecorder做录音的一个程序,在ios5上面,没有问题,在ios6上面,几次录音以后,程序莫名崩溃,一直找不到原因,后来发现是[AVAudioRecorder stop]的这个方法,在AVAudioRecorder的对象release之前,我加了stop这个函数, 但是应该是这么写 if ([AVAudioRecorder isRecording]原创 2013-01-07 18:44:26 · 2246 阅读 · 0 评论 -
ios 合并图片显示
代码如下:- (UIImage *)addTwoImageToOne:(UIImage *)oneImg twoImage:(UIImage *)twoImg xposition:(NSInteger)xpos yposition:(NSInteger)ypos原创 2012-12-29 17:22:51 · 2451 阅读 · 0 评论 -
presentModalViewController的动画
转来的,没验证,,,以后有需要的时候在看 self.myPushNav = [[MyPushNavViewController alloc] init]; CATransition *animation = [CATransition animation]; animation.duration = 5.0; animation.timingFun转载 2012-11-14 15:36:13 · 1032 阅读 · 0 评论 -
产品上线,欢迎感兴趣的朋友试用
产品终于上线了,,,欢迎感兴趣的朋友试用,提出您宝贵的意见, 下载地址 https://itunes.apple.com/cn/app/ren-ren-guang-jie-mei-nu-da/id572264477?mt=8 91下载地址:http://app.91.com/Soft/iPhone/com.renren.shopping-1.0-1.0.html原创 2012-11-09 10:59:42 · 500 阅读 · 0 评论 -
解决xcode,联想实效的问题
1,打开你的XCode的Organizer window,到Project的标签上,选择你的专案送达删除删掉,这只会删Derived Data,不会删专案档2,把XCode的全部关掉3,的页面找到你专案档aaaa.xcodeproject,送达右键显示套件内容4,保留project.pbxproj其它全部删除5,重开的Xcode,开启你的专案就行了转载 2012-10-26 11:52:46 · 3611 阅读 · 1 评论 -
设备升级到ios5,又不想升级为 LION 而正常联机调试的方法
话说,本人把设备升级到了ios5.1, 之后连上数据线想调试程序,xcode竟然检测不到设备了,一看organizer 显示xcode4.2并不支持ios5.1正常的思路当然去升级xcode,但新的xcode4.3 竟然没有支持snow系统的版本不想升级lion麻烦又花银子,找到了解决的办法,下面记录一下解决方案,以给与我一样经历的人省198块大洋1、下载lion版本的xc转载 2012-03-27 10:34:31 · 1255 阅读 · 0 评论 -
NSArray如何加载基本数据类型
举例: NSNumber *icon_height; // 创建NSNumber对象margin_left1 = [NSNumber numberWithFloat: 15.0 / 2]; // 将浮点型转换成NSNumber类型的对象NSArray *array1;array1 = [NSArray arrayWithObjects:ico转载 2012-02-09 17:21:13 · 4820 阅读 · 0 评论 -
iphone直播的实现
iphone上面实现直播,其实也很简单,,相比之前做的点播,客户端基本上可以不用处理什么,服务端可以采用vlc,对传递来的rtsp地址,进行解析,在配合mediastreamsegmenter这个工具就可以了。详细说明就不写了,呵呵。原创 2011-09-05 16:34:38 · 885 阅读 · 2 评论 -
NSString+NSMutableString+NSValue+NSAraay用法汇总
//一、NSString /*----------------创建字符串的方法----------------*/ //1、创建常量字符串。 NSString *astring = @"This is a String!"; //2、创建空字符串,给转载 2011-07-13 11:34:35 · 496 阅读 · 0 评论 -
ipone 视频客户端的审核
相信往苹果应用商店里面提交视频客户端的时候,如果没有经验的话,都会遇到9.4条款,不符合的情况, 我们现在提交了三次了,每次都是这个有问题,被打回,第三次的时候,估计苹果的审核人员都该疯了吧, 终于在reslouce center里面明确写出来了,可以用mediastreamvalidator 这个工具来测试你的url,主要是来 验证一下64k的那个码率的原创 2011-06-28 10:48:00 · 948 阅读 · 5 评论 -
application load的一个小问题
<br /> 今天在用load提交程序的时候,发现找不到已经编译好的程序,原因是load会保存已有的账户,我用另外的开发者id去提交的时候,必选在load的菜单的windows里面,set up wizard那个选项里面,重新设置一下账户就行了。<br /> <br /> <br /> 等待app的审核,呵呵。原创 2011-06-01 14:26:00 · 921 阅读 · 0 评论 -
iphone 平台下判断wifi连接
<br /> <br />#include <ifaddrs.h> <br />#include <arpa/inet.h><br /> <br /> <br />BOOL IsWIFIConnection<br />{<br />BOOL ret = YES;<br />struct ifaddrs * first_ifaddr, * current_ifaddr;<br />NSMutableArray* activeInterfaceNames = [[NSMutableArray alloc] in原创 2011-04-14 13:34:00 · 1217 阅读 · 0 评论 -
判断iphone4 retain屏幕方法
<br /> #define isRetina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)<br /> <br /> <br /> 用这个宏就可以了,简单方便原创 2011-04-13 13:38:00 · 3786 阅读 · 0 评论 -
协议(Protocol)的用法和代码例子
<br />协议,是通过网络,计算机使用者进行通讯后,互相进行约定规定的集合。两个类进行通讯,用协议就比较方便。下面是 CocoaChina 版主“angellixf”为新手写的协议入门介绍以及代码例子,希望对刚入门开发者有所帮助<br />一、说明<br /> 1.协议声明了可以被任何类实现的方法<br /> 2.协议不是类,它是定义了一个其他对象可以实现的接口<br /> 3.如果在某个类中实现了协议中的某个方法,也就是这个类实现了那个协议。<br /> 4.协议经常用来实现委托对象。一个委托对转载 2011-05-25 10:54:00 · 898 阅读 · 1 评论 -
iphone程序转换为ipad程序
<br />一、将iphone程序变运行为ipad程序<br /><br /> 1、首先设置target 的info:将baseSDK的版本降低到 3.2,保证程序能在ipad程序上运行;Targeted Device Family设置为iPhone/iPad;iPhone OS Deployment Target设置为iPhone OS 3.1.3或更低。<br /><br /> 2、选择simulator为ipad,run!~<br /><br /><br /><br />转载 2011-05-26 14:38:00 · 4276 阅读 · 0 评论 -
由init、loadView、viewDidLoad、viewDidUnload、dealloc的关系说起
由init、loadView、viewDidLoad、viewDidUnload、dealloc的关系说起init方法在init方法中实例化必要的对象(遵从LazyLoad思想)init方法中初始化ViewController本身 loadView方法转载 2011-09-16 10:07:01 · 406 阅读 · 0 评论 -
@property详解
在这篇教程中,我们将谈一谈objc的property。我们将介绍property是什么,它是怎样工作的,有一些什么样的规则,以及使用它们可以用来避免大部分与内存相关的问题。 如果你还没有本系列教程的样例工程的话,可以点击这里下载,我们将从这个工程开始。Retain Yo转载 2011-09-22 15:23:14 · 848 阅读 · 0 评论 -
iphone 调试的一个小技巧
Note: "Double-Click for Symbol" no longer exists in XCode 4You can break into the debugger whenever an exception is raised. Go to the Breakpoints window in Xcode, and double click "Double-Click fo原创 2011-12-30 13:42:11 · 564 阅读 · 0 评论 -
做iphone ui需要的一个图片
如图,转载 2012-02-02 11:48:18 · 922 阅读 · 0 评论 -
iphone 掉用google map
NSString *theString = [NSString stringWithFormat:@"http://maps.google.com/maps?saddr=Current Location&daddr=%f,%f",Location.latitude, Location.longitude]; theString = [theString stringByAddingPe原创 2012-02-01 15:37:40 · 582 阅读 · 0 评论 -
Program ended with exit code: 0
有的时候iphone程序崩溃,concole里面没有什么有用的信息,只有这个Program ended with exit code: 0,可能的原因,不是当前ui进程的问题,而是其它进程引起的问题,,把出错的地方的方法调用,改成performonMainThread解决了这个问题,原创 2012-01-07 17:04:59 · 6355 阅读 · 0 评论 -
navigationitem 的titleView
titleView 既然是view,就是可以自定义,不过在做的时候,碰到了百思不得其解的问题我的custom view就是一个label加一个button,然后,self.navigationItem.titleView = _titleView;因为我点某个选项,就需要改变label的标题,发现_titleView位置有的时候会出错,这个一直不知道原创 2011-12-28 14:48:08 · 2365 阅读 · 1 评论 -
xcode4.2 安装老版本的模拟器
xcode4。2 只有ios5的模拟器,不过定位功能没法用,网上看了下,说是打ios5。0 beta3的升级包可以,真是无语,苹果的开发工具竟然出现这种问题,不过还可以安装之前的版本,将xcode3。2里面的plateform里面的sdks ios4。0sdk,ios4。1sdk,copy到xcode4。2相应的下面,重启xcode4。2就可以原创 2011-12-06 14:00:36 · 1624 阅读 · 0 评论 -
iphone内存检查工具leak
iphone下面检查内存的工具,大家都知道是leak,而且这个工具也很强大,可以这么说,只要是它报出来的泄露,基本上都是自己程序代码的问题,当然,有的时候它没那么智能,报的位置不是那么准确,它基本上可以从它报的信息里面分析出大概的位置,然后在自己分析,我碰到一个问题是在类A里面用到了属性,是self.place, leak报这个有泄露,可在这个类里查了半天,也看不出问题,d原创 2011-11-10 16:52:05 · 858 阅读 · 0 评论 -
ios上面对输入键盘的处理
最近做的ios输入键盘在ios5上面有问题,主要是ios5上面中文键盘,会对出来一块,我原来用的是toolbar和输入键盘不是在一起的,而位置是写死的,这样就造成了ios5上面会遮盖,在网上找了下,解决方法如下,实际上就是获得输入键盘的高度,而不要写死位置,这样也避免以后出问题。- (void)viewDidLoad[super viewDidLoad];[[NSN转载 2011-11-14 17:24:31 · 1391 阅读 · 0 评论 -
ios中调用系统地图
ios中调用系统地图,6.0以下是google地图,6.0以上是高德的地图了,不过这都没关系,使用MKMapView。 主要的问题是定位的问题,使用clocationmanage得到的经纬度是真实的经纬度,用在地图上以后,偏差比较大,,,所以要使用MKMapView的经纬度,他这个经纬度是经过纠正的了,定位比较准确,关键参数就是showsUserLocation。原创 2013-08-01 17:37:39 · 4204 阅读 · 0 评论