随笔分类 -  iOS开发

上一页 1 ··· 5 6 7 8 9 10 11 下一页
呼呼
摘要:iOS的分析工具可以发现编译中的warning,内存泄漏隐患,甚至还可以检查出logic上的问题;所以在自测阶段一定要解决Analyze发现的问题,可以避免出现严重的bug;内存泄漏隐患提示:Potential Leak of an object allocated on line ……数据赋值隐患提示:The left operand of …… is a garbage value;对象引用隐患提示:Reference-Counted object is used after it is released;以上提示均比较严重,可能会引起严重问题,需要开发者密切关注!方法:xcode---- 阅读全文
posted @ 2012-11-22 00:57 GreyWolf 阅读(264) 评论(0) 推荐(0)
摘要:iOS开发:iPhone 面试题解答1.main(){inta[5]={};int *ptr=(int*)( a+1);printf("%d%d",*(a+1),*(ptr-1));}答:25*(a+1)就是a[1],*(ptr-1)就是a[4]执行结果是2,5a+1不是首地址+1,编制会认为加一个a数组的偏移,是偏移了一个数组的大小(本例是5个int)int *ptr=(int *)( a+1);则ptr实际 是 (a[5])也就是a+5原因如下:a是数组指针,其类型为int (*)[5];而 指针加1要根据指针类型加上一定的值,不同类型的指针+1之后增加的大小不同。a是 阅读全文
posted @ 2012-11-22 00:56 GreyWolf 阅读(227) 评论(0) 推荐(0)
摘要:1. 用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题):#define SECONDS_PER_YEAR (60 * 60 * 24 * 365ul)1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少 秒而不是计算出实际的值,是更清晰而没有代价的。3) 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。4) 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。2. Objective- 阅读全文
posted @ 2012-11-22 00:55 GreyWolf 阅读(145) 评论(0) 推荐(0)
摘要:Object-C有多继承吗?没有的话用什么代替?cocoa中所有的类都是NSObject的子类多继承在这里是用protocol委托代理来实现的你不用去考虑繁琐的多继承,虚基类的概念.ood的多态特性在obj-c中通过委托来实现.Object-C有私有方法吗?私有变量呢?objective-c –类里面的方法只有两种,静态方法和实例方法.这似乎就不是完整的面向对象了,按照OO的原则就是一个对象只暴露有用的东西.如果没有了私有方法的话,对于一些小范围的代码重用就不那么顺手了.在类里面声名一个私有方法@interface Controller : NSObject { NSString *somet 阅读全文
posted @ 2012-11-22 00:54 GreyWolf 阅读(157) 评论(0) 推荐(0)
摘要:1.Difference between shallow copy and deep copy?2.What is advantage of categories? What is difference between implementing a category and inheritance?3.Difference between categories and extensions?4.Difference between protocol in objective c and interfaces in java?5.What are KVO and KVC?6.What is pu 阅读全文
posted @ 2012-11-22 00:53 GreyWolf 阅读(202) 评论(0) 推荐(0)
摘要:1.Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么?2.#import 跟#include 又什么区别,@class呢;#import<> 跟 #import”"又什么区别?3.属性readwrite,readonly,assign,retain,copy,nonatomic 各是什么作用,在那种情况下用?4.id 声明的对象有什么特性?5.MVC是什么?有什么特性?为什么在iPhone上被广泛运用?6.对于语句NSString* testObject = [[NSData alloc] init 阅读全文
posted @ 2012-11-22 00:52 GreyWolf 阅读(157) 评论(0) 推荐(0)
摘要:1.Difference between shallow copy and deep copy?浅复制和深复制的区别?答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身。深层复制:复制引用对象本身。意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一个思想。深复制就好理解了,内存中存在了两份独立对象本身。用网上一哥们通俗的话将就是:浅复制好比你和你的影子,你完蛋,你的影子也完 阅读全文
posted @ 2012-11-22 00:51 GreyWolf 阅读(162) 评论(0) 推荐(0)
摘要:经过本人最近的面试和对面试资料的一些汇总,准备记录这些面试题,以便ios开发工程师找工作复习之用,本人希望有面试经验的同学能和我同时完成这个模块,先出面试题,然后会放出答案。1.Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么?2.#import 跟#include 又什么区别,@class呢;#import<> 跟 #import”"又什么区别?3.属性readwrite,readonly,assign,retain,copy,nonatomic 各是什么作用,在那种情况下用?4.id 声明的对象 阅读全文
posted @ 2012-11-22 00:50 GreyWolf 阅读(377) 评论(0) 推荐(0)
摘要:更新了一下,支持iPhone4和iPad,iPod Touch4#import <Foundation/Foundation.h>#import <sys/utsname.h>enum { MODEL_UNKNOWN, MODEL_IPHONE_SIMULATOR, MODEL_IPOD_TOUCH, MODEL_IPOD_TOUCH_2G, MODEL_IPOD_TOUCH_3G, MODEL_IPOD_TOUCH_4G, MODEL_IPHONE, MODEL_IPHONE_3G, MODEL_IPHONE_3GS, MODEL_IPHONE_4G, MODEL_I 阅读全文
posted @ 2012-09-19 11:20 GreyWolf 阅读(223) 评论(0) 推荐(0)
摘要:标注:APNs苹果推送服务器Device安装带有推送服务程序的iPhone手机Provider程序服务器,把需要推送的信息发给 APNsDeviceToken在Device第一次连接APNs时,由APNs生成的经过加密的连接认证信息。在以后的连接中,无论时Provider到APNs还是APNs到Device 都需要 DeviceToken作为认证。Payload需要推送的消息的主体内容。alert-alert消息的消息体,按键标题等badge-显示在程序icon右上角的数字,sound-声音提示文件的文件名,该声音资源文件要在程序包中。整体流程大体分为五个步骤:1:Device-->连接 阅读全文
posted @ 2012-09-19 11:20 GreyWolf 阅读(222) 评论(0) 推荐(0)
摘要:/************************************************IOS 类代码************************/我自己做的翻书效果,小猫咪再次登场「2011/03/02」如何实现QQLive HD界面(附代码)「2011/03/02」tabelviewcell点击设置背景图片「2011/03/02」基于UDP的聊天程序(借鉴iphone自带的短信例子)「2011/03/01」橡皮擦效果「2011/01/06」<iOS4> iAd Demo,这个是app Store能通过的版本,感谢我们的QD类似Tweetie那种拽下来就refres 阅读全文
posted @ 2012-09-13 00:56 GreyWolf 阅读(814) 评论(0) 推荐(0)
摘要:关于String:1,把一个整数,转换成一个NSString[NSString stringWithFormat:@"%d",3];2,比较两个NSString是否相等[@"test" isEqualToString:@"test"];3,@”abcdefg”,截取第两个字符开始的三个字符[@"abcdefg" substringWithRange:NSMakeRange(1, 3)]4,讲解UTF8与Unicode的区别与关系这里有详细讲解5,NSString , NSMutableString的区别NSStri 阅读全文
posted @ 2012-09-04 12:24 GreyWolf 阅读(224) 评论(0) 推荐(0)
摘要:1、使用openURL来实现发邮件的功能:NSString *url = [NSString stringWithString: @"mailto:foo@example.com?cc=bar@example.com&amp; subject=Greetings%20from%20Cupertino!&amp; body=Wish%20you%20were%20here!"];[[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];缺点很明显,这样的过程会导致程序暂时退出 阅读全文
posted @ 2012-08-31 22:21 GreyWolf 阅读(187) 评论(0) 推荐(0)
摘要:在程序中调用系统自带的应用,比如我进入程序的时候,希望直接调用safar来打开一个网页,下面是一个简单的使用:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; self.viewController = [[[ViewControl... 阅读全文
posted @ 2012-08-24 18:51 GreyWolf 阅读(209) 评论(0) 推荐(0)
摘要:1.可以依靠两个不同的库来满足我们绘图的需要,一个库是Quartz 2D,它是Core Graphics框架的一部分;另一个库是OpenGL ES,它是跨平台的图形库。2.OpenGL ES是跨平台图形库OpenGL的简化版、OpenGL ES是OpenGL的一个子集,OpenGL ES是专为iphone之类的嵌入式系统(因此缩写为字母ES)设计的。3.Quartz是一组函数、数据类型以及对象,专门用于直接在内存中对视图或图像进行绘制。Quartz将正在绘制的视图或图像视为一个虚拟的画布,并遵循所谓的绘画者模型。4.OpenGL ES以状态机的形式实现,OpenGL ES不允许执行直接影响视图 阅读全文
posted @ 2012-08-01 19:02 GreyWolf 阅读(298) 评论(0) 推荐(0)
摘要:#import <UIKit/UIKit.h>@interface ViewController : UIViewController{ UIImageView *mImageView;}@end #import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad{ [super viewDidLoad]; mImageView = [[UIImageView alloc] initWithFrame:self.vi 阅读全文
posted @ 2012-07-31 16:32 GreyWolf 阅读(877) 评论(0) 推荐(0)
摘要:苹果无敌风火轮如果不是那么酷的话,我们就不需要定制它了。可惜的是,UIActivityIndicator只有一个初始化方法 initWithActivityIndicatorStyle,我们一不能任意改变它的大小——有时候我们需要一个比 UIActivityIndicatorViewStyleWhiteLarge还要更大的无敌风火轮;二,它不够友好——我们需要在风火轮的下面显示一些友好的提示信息。为此,我们不惜代价,自己用一个UIActivityIndicator控件和用Quartz绘图的手段,定制了一个自己的无敌风火轮。#import <Foundation/Foundation.h& 阅读全文
posted @ 2012-07-31 14:53 GreyWolf 阅读(231) 评论(0) 推荐(0)
摘要:void drawLinearGradient(CGContextRef context, CGRect rect, CGColorRef startColor, CGColorRef endColor){ CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); CGFloat locations[] = {0.0,1.0}; //颜色所在位置 NSArray *colors = [NSArrayarrayWithObjects:(id)startColor... 阅读全文
posted @ 2012-07-31 12:17 GreyWolf 阅读(1020) 评论(0) 推荐(0)
摘要:1、绘图总结:绘图前设置:CGContextSetRGBFillColor/CGContextSetFillColorWithColor //填充色CGContextSetRGBStrokeColor/CGContextSetStrokeColorWithColor //笔颜色CGContextSetLineWidth //线宽度绘图后设置:注: 画完图后,必须 先用CGContextStrokePath来描线,即形状,后用CGContextFillPath来填充形状内的颜色.2.常见图形绘制:CGContextFillRect/CGContextFillRectsCGContextFillE 阅读全文
posted @ 2012-07-31 11:00 GreyWolf 阅读(1085) 评论(0) 推荐(0)
摘要:Base64是什么, 在此就不解释了.NSData + Base64.h &NSData + Base64.m 下载在这里.用法简单,就是在使用NSData之前先将NSData + Base64.h引入, 从而可以直接使用类别中的方法.大体如下: NSString *str = @"Test"; NSLog(@"原始Obj: %@", str); NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding]; NSLog(@"原始Obj转为data:%@", data) 阅读全文
posted @ 2012-07-30 19:19 GreyWolf 阅读(317) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 11 下一页