随笔分类 -  IOS开发

摘要:IPhone下每个app可用的内存是被限制的,如果一个app使用的内存超过20M,则系统会向该app发送Memory Warning消息。收到此消息后,app必须正确处理,否则可能出错或者出现内存泄露。app收到Memory Warning后会调用:UIApplication::didReceiveMemoryWarning -> UIApplicationDelegate::applicationDidReceiveMemoryWarning,然后调用当前所有的viewController进行处理。因此处理的主要工作是在viewController。我们知道,创建viewcontrol 阅读全文
posted @ 2013-10-23 11:08 编程小翁 阅读(3765) 评论(0) 推荐(0) 编辑
摘要:我们知道,在IOS中UIButton UIControl都有一个默认的选中效果,即点中后会图标会变暗,移开后又恢复正常。如何让UIView UIImageView等这些普通的view也实现同样的效果呢? 最近的一个项目里面,需要实现一个类似iPad/iPhone的主界面效果,但是不同的是,每个item里面显示图片的都必须是UIImageView,因为icon的图片是从服务端异步下载下来的。而iPad的主界面里面,显示图片的载体应该是一个Button,已经自带着重效果了。现在的任务是实现UIImageView的阴影着重效果。 其实要实现只需往Item(item = UIImageView... 阅读全文
posted @ 2013-09-04 19:47 编程小翁 阅读(7390) 评论(1) 推荐(1) 编辑
摘要:转载请保留以下原文链接:http://my.oschina.net/taptale/blog/91894一、项目需求在实际项目中,用户在上传图片时,有时会一次性上传大量的图片。在上传图片前,我们要进行一系列操作,比如:旋转图片为正确方向,压缩图片等,这些操作需要将图片加载到内存中,下面对内存的使用做详细分析.二、内存分析,非优化我在测试项目中,重复加载了一张图片1000次,首先加载图片到内存,然后进行压缩操作,释放内存01for(inti = 0; i <= 1000; i ++) {0203//1.首先我们获取到需要处理的图片资源的路径0405NSString *filePath = 阅读全文
posted @ 2013-09-04 17:59 编程小翁 阅读(2813) 评论(0) 推荐(0) 编辑
摘要:转自:http://blog.csdn.net/favormm/article/details/6664970如何用Facebook graphic api上传视频:http://developers.facebook.com/blog/post/532/Keychain保存数据封装:https://github.com/carlbrown/PDKeychainBindingsController对焦功能的实现:http://www.clingmarks.com/?p=612自定义圆角Switch按件:https://github.com/domesticcatsoftware/DCRound 阅读全文
posted @ 2013-08-14 14:00 编程小翁 阅读(865) 评论(0) 推荐(1) 编辑
摘要:Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:1)运行在主线程的Main queue,通过dispatch_get_main_queue获取。/*!* @function dispatch_get_main_queue** @abstract* Returns the default queue that is bound to the main thread.** @discussion* In order to invoke blocks submitted to the main queue, 阅读全文
posted @ 2013-08-12 19:33 编程小翁 阅读(3128) 评论(0) 推荐(1) 编辑
摘要:iOS常用目录整理说明是本文要介绍的内容,虽然不同API全面,也算是在编程中常用到的存放目录,所以是必备文档,不多说,来看详细内容讲解。1、【/Applications】常用软件的安装目录 内建软体及JB软体存放位置2. 【/private /var/ mobile/Media /iphone vi... 阅读全文
posted @ 2013-08-06 17:17 编程小翁 阅读(7384) 评论(0) 推荐(0) 编辑
摘要:以下是开发初期收集整理的一点资料多线程之NSInvocationOperation多线程编程是防止主线程堵塞,增加运行效率等等的最佳方法。而原始的多线程方法存在很多的毛病,包括线程锁死等。在Cocoa中,Apple提供了NSOperation这个类,提供了一个优秀的多线程编程方法。本次介绍NSOperation的子集,简易方法的NSInvocationOperation:@implementation MyCustomClass- (void)launchTaskWithData:(id)data{ //创建一个NSInvocationOperation对象,并初始化到方法 //在这里,sel 阅读全文
posted @ 2012-08-15 10:08 编程小翁 阅读(4348) 评论(0) 推荐(0) 编辑
摘要:原先按了运行后一直没有结果,连模拟器没启动。原来罪魁祸首是上面这个xcode会自己改变scheme,每次必须手动去修改才行 阅读全文
posted @ 2012-08-05 11:08 编程小翁 阅读(374) 评论(1) 推荐(0) 编辑
摘要:typedef struct{char name[20];char age[10];} stu;发送方:..............................stu stu1;strcpy(stu1.name, "myname");strcpy(stu1.age, "30");send(soc... 阅读全文
posted @ 2012-07-25 17:14 编程小翁 阅读(4326) 评论(0) 推荐(0) 编辑
摘要:JSON->NSData 1 - (IBAction)touchWriteButton:(id)sender { 2 NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init]; 3 [dictionary setValue:@"Anthony" forKey:@"First Name"]; 4 [dictionary setValue:@"Robbins" forKey:@"Last Name"]; 5 [dictionary s 阅读全文
posted @ 2012-07-17 18:21 编程小翁 阅读(15456) 评论(0) 推荐(0) 编辑
摘要:http://www.cocoachina.com/iphonedev/sdk/2010/1011/2159.html 这个讲得更好/////////////////////////官方网站:http://allseeing-i.com/ASIHTTPRequest/。可以从上面下载到最新源码,以及获取到相关的资料。使用iOS SDK中的HTTP网络请求API,相当的复杂,调用很繁琐,ASIHTTPRequest就是一个对CFNetwork API进行了封装,并且使用起来非常简单的一套API,用Objective-C编写,可以很好的应用在Mac OS X系统和iOS平台的应用程序中。ASI.. 阅读全文
posted @ 2012-07-17 14:25 编程小翁 阅读(710) 评论(0) 推荐(0) 编辑
摘要:以前都觉得UIView的autoresizemask属性总是那么死板,如果每次对每个view都“|”上那一大串就行。这是个万金油,保证我们写程序一定不会出错。self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutores... 阅读全文
posted @ 2012-05-10 16:40 编程小翁 阅读(2673) 评论(1) 推荐(1) 编辑
摘要:1、With ARC, you should use strong instead of retain and weak instead of assign when defining the properties.@interface Person : NSObject@property (nonatomic, strong) NSString *firstName;@property (nonatomic, strong) NSString *lastName;@property (nonatomic, strong) NSNumber *yearOfBirth;@property (no 阅读全文
posted @ 2012-05-04 14:17 编程小翁 阅读(375) 评论(0) 推荐(0) 编辑
摘要:https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/IPhoneOSClientImp/IPhoneOSClientImp.html#//apple_ref/doc/uid/TP40008194-CH103-SW1在项目的AppDelegate中的didFinishLaunchingWithOptions方法中加入下面的代码:Ios代码[[UIApplicationsharedApplication]registerForRemote 阅读全文
posted @ 2012-05-02 16:34 编程小翁 阅读(32325) 评论(0) 推荐(0) 编辑
摘要:将自己的类封成库供别人调用,非常方便,就行xcode中的许多类库一样。那么如何制作自己的类库呢?本人在网上看过很多童鞋的文章,都没有试成功,最后在同事的帮助下搞定。今天有点空闲时间,赶紧记下来,一是跟大家分享,二是怕忘了,今天有同事问我,都感觉有点生了,所以有了这篇文章。下面教大家一步步制作framework1、 新建一个项目选择Framwork&Library中的Cocoa Touch Static Library。如图2、 命名项目名称3、 加载自己要封装的东西4、 加载自己的代码5、 选择设备和模拟器两种方式,编译生成libhello_world.a文件6、 查看是否生成两个文件 阅读全文
posted @ 2012-04-21 14:42 编程小翁 阅读(2518) 评论(1) 推荐(0) 编辑
摘要:loadview:// 有没有nib 只要是复写了loadview loadview都会被执行 有nib文件的话加载的是nib文件的view 没有的话会按照loadview里的代码加载也就是说程序先会执行loadview方法,然后再去加载nib文件。UIViewController类或其子类会在初始化时创建一个UIView对象,会作为控制器的默认视图显示出来,可以通过self.view寻址访问。但没有调用loadView方法时,self.view=nil。loadView在每一次使用self.view这个property,并且self.view为nil的时候被调用,用以产生一个有效的self. 阅读全文
posted @ 2012-03-19 17:24 编程小翁 阅读(800) 评论(0) 推荐(0) 编辑
摘要:在xcode中手动添加frameWork。#import"MusicViewController.h"#import<AVFoundation/AVFoundation.h>#import<AudioToolbox/AudioToolbox.h>@implementationMusicViewController@synthesizestart;@synthesizepause;@synthesizerestart;@synthesizeBT1;@synthesizeplayer;-(IBAction)tostart:(id)sender{[play 阅读全文
posted @ 2012-03-18 15:10 编程小翁 阅读(5577) 评论(0) 推荐(0) 编辑
摘要:iphone/ipad无键盘的设计是为屏幕争取更多的显示空间,大屏幕在观看图片、文字、视频等方面为用户带来了更好的用户体验。而触摸屏幕是iOS设备接受用户输入的主要方式,包括单击、双击、拨动以及多点触摸等,这些操作都会产生触摸事件。在Cocoa中,代表触摸对象的类是UITouch。当用户触摸屏幕后,就会产生相应的事件,所有相关的UITouch对象都被包装在事件中,被程序交由特定的对象来处理。UITouch对象直接包括触摸的详细信息。UITouch类中包含5个属性: window:触摸产生时所处的窗口。由于窗口可能发生变化,当前所在的窗口不一定是最开始的窗口。 view:触摸产生时所处的视图。由 阅读全文
posted @ 2012-03-18 10:50 编程小翁 阅读(383) 评论(0) 推荐(0) 编辑
摘要:EXC_BAD_ACCESS这个问题一直不好调试,之前有看到过说配置一个环境变量可以很方便的跟踪问题,因此试了一下,发现还真是方便了很多,以下是XCODE 4的配置方法: Edit Scheme->Arguments->Environment variables 增加 NSZombieEnabled ,设置为YES,并勾选上,OK,再次运行,在console就会显示出出错的地方了.(另外: NSLog(@"id : %@",id); //id is integer,should be printed as %d 像这样的语句也会引起EXC_BAD_ACCESS, 阅读全文
posted @ 2012-03-17 23:43 编程小翁 阅读(379) 评论(0) 推荐(0) 编辑
摘要:Notificationcenter的用法:【原】NSNotificationCenter未必一定要建在消息接收者的类中。可以放在别的类中,先实例化一下,然后把observer赋值为刚对象。这里的observer相当于接受者(receiver),object相当于发送者(poster)。理解了这点就可以较灵活地使用通知了。iPhone软件开发的时候会遇到这种情况:打开APP后会在后台运行某个方法,例如下载文件,下载完成后可能需要调用某个方法来刷新界面,这时候可能没法在下载的函数中回调。NSNotificationCenter(通知)是一个很好的选择。通知使用起来灰常的简单:1、定义通知:[[N 阅读全文
posted @ 2012-03-17 19:43 编程小翁 阅读(8852) 评论(0) 推荐(1) 编辑

我是来自厦门的Jilon. 翁,请关注我的微博:真实的weng,或关注微信:Jilon