2012年5月13日

摘要: 1、Delegate:消息的发送者(sender)告知接收者(receiver)某个事件将要发生,delegate同意然后发送者响应事件,delegate极值使得接收者可以改变发送者的行为。通常发送者和接收者的关系是直接的一对多的关系。Notification:消息的发送者告知接收者事件已经发生或者将要发送,仅此而已,接收者并不能反过来影响发送者的行为。通常发送者和接收者的关系是间接的多对多关系。2、delegate比notification效率高。3、delegate方法比notification更加直接。delegate方法往往需要关注返回值,也就是delegate方法的结果。比如-win 阅读全文
posted @ 2012-05-13 20:46 wenxp2006 阅读(311) 评论(0) 推荐(0) 编辑
 
摘要: 图标的圆角和光晕效果1.图标的圆角效果是系统自动加上的,且是我们无法控制的。2.光晕效果虽然也是系统加上的,但可以通过程序中设置app的光晕参数UIPrerendedIcon来是否需要内建光晕效果。方法:在info.plist里面添加一条记录UIPrerenderedIcon,新版的XCODE 会自动识别为Icon already includes gloss effects 打上勾就OK了。如果没有识别的右边栏写上YES就可以。启动画面虽然苹果建议开发者使用app的“空白”界面作为启动画面。但若要让启动画面显得漂亮,可先让app的界面漂亮;App的界面漂亮,那app的“空白”界面也漂亮;Ap 阅读全文
posted @ 2012-05-13 16:49 wenxp2006 阅读(2119) 评论(0) 推荐(0) 编辑
 
摘要: UITableViewController表格视图控制器UITableViewController类继承自UIViewController类,极大地简化了创建UITableView的过程。UITableViewController负责处理表格布局,并使用一个UITableView实例对其进行填充。可设置此控制器的窗体以支持任意导航栏或工具栏。可以通过tableView实例变量访问表格视图。重要提示:手工代码创建UITableViewController的子类时,如果定义loadView方法,则确保调用其超类的实现[super loadView]。只有这样才能保证表格视图的正确设置以及在子类中添 阅读全文
posted @ 2012-05-13 16:46 wenxp2006 阅读(793) 评论(2) 推荐(0) 编辑
 
摘要: 继承UIImageView,重写init函数。 1 //旋转手势 2 UIRotationGestureRecognizer *rotationGesture = [[UIRotationGestureRecognizer allor]initWithTarget:selft action:@selector(rotatePiece:)]; 3 [self addGestureRecognizer:rotationGesture]; 4 [rotationGesture release]; 5 6 //放大缩小手势 7 UIPinchGestureRecognizer *pinchGestu. 阅读全文
posted @ 2012-05-13 16:45 wenxp2006 阅读(154) 评论(0) 推荐(0) 编辑
 
摘要: 1.创建并初始化创建UITextView的文件,并在.h文件中写入如下代码:1 #import <UIKit/UIKit.h>2 3 @interface TextViewController : UIViewController <UITextViewDelegate>{4 UITextView *textView;5 }6 7 @property (nonatomic, retain) UITextView *textView; 8 9 @end在.m文件中初始化这个textview,写入代码如下: 1 self.textView = [[[UITextView a 阅读全文
posted @ 2012-05-13 16:43 wenxp2006 阅读(106) 评论(0) 推荐(0) 编辑
 
摘要: CALayer属于Core Animation部分的内容,比较重要而不太好理解。以下是园子中看到的一篇文章的摘录:1. UIView是iOS系统中界面元素的基础,所有的界面元素都是继承自它。它本身完全是由CoreAnimation来实现的。它真正的绘图部分,是由一个CALayer类来管理。UIView本身更像是一个CALayer的管理器,访问它的跟绘图和跟坐标有关的属性,例如frame,bounds等,实际上内部都是在访问它所包含的CALayer的相关属性。2. UIView有个重要属性layer,可以返回它的主CALayer实例。// 要访问层,读取UIView实例的layer属性CALay 阅读全文
posted @ 2012-05-13 16:42 wenxp2006 阅读(102) 评论(0) 推荐(0) 编辑
 
摘要: 一、确认网络环境3G/WiFi1). 要在应用程序中使用Reachability,首先要完成以下两步骤:1.1 添加源文件:将Reachability.h和Reachability.m拷贝到你工程中。1.2 添加必要框架:将SystemConfiguration.framework添加到工程项目中。2). 检查网络状态Reachability *r = [Reachability reachabilityWithHostName:@"www.apple.com"];switch([r currentReachabilityStatus]) { case NotReachab 阅读全文
posted @ 2012-05-13 16:40 wenxp2006 阅读(147) 评论(0) 推荐(0) 编辑
 
摘要: 这个类可以用来检测用户是否连接到internet,只有一个方法,返回YES或NO。功能类似Reachability。类的头文件Connection.h//// Connection.h//#import <Foundation/Foundation.h>#import <SystemConfiguration/SystemConfiguration.h>#import <netinet/in.h>#import <arpa/inet.h>#import <netdb.h>@interface Connection : NSObject 阅读全文
posted @ 2012-05-13 16:40 wenxp2006 阅读(145) 评论(0) 推荐(0) 编辑
 
摘要: 二、使用NSConnection下载数据1. 创建NSConnection对象,设置委托对象NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[self urlString]]];[NSURLConnection connectionWithRequest:request delegate:self];2. NSURLConnection delegate委托方法- (void)connection:(NSURLConnection *)connection didRe 阅读全文
posted @ 2012-05-13 16:39 wenxp2006 阅读(138) 评论(0) 推荐(0) 编辑
 
摘要: 如果程序中用到了WiFi,想有WiFi提示,该如何做呢?其实很简单,只需要在.plist文件中加入如下Key/Value键值对即可:1.键名:Application uses WiFi 值:YES2.键名:SBUsesNetwork 值:3如图所示:若要实现当iphone设置成飞行模式时,再运行程序时,会弹出如图对话框。通过修改 Info.plist 文件来达到目的加入UIRequiresPersistentWiFi字段,设置为true 阅读全文
posted @ 2012-05-13 16:36 wenxp2006 阅读(151) 评论(0) 推荐(0) 编辑
 
摘要: 与地图打交道时,有时需要查找经纬度获取地址信息,MapKit提供了这样一种工具——反向地理编码MKReverseGeocoder。MKReverseGeocoder *reverseGeocoder = [[[MKReverseGeocoder alloc] initWithCoordinate:self.mapView.userLocation.location.coordinate] autorelease];NSLog(@"%g",self.mapView.userLocation.location.coordinate.latitude);NSLog(@" 阅读全文
posted @ 2012-05-13 16:36 wenxp2006 阅读(805) 评论(0) 推荐(0) 编辑
 
摘要: Foundation Framework框架中用于收集CoCoa对象的三种集合:NSArray数组 用于对象有序集合NSSet 集合 用于对象无序集合NSDictionary字典 用于键值(Key/Value)映射以上三种集合类是不可变的(一旦初始化后,就不能改变)。因此对应的另有三种可变集合类:NSMutableArray、NSMutableSet、NSMutableDictionary。所有这些(六大)集合类都只能收集CoCoa对象(NSObject对象)而已。NSArray基本方法:+ (id)arrayWithObjects:(id)firstObject,...,nil; //可由一 阅读全文
posted @ 2012-05-13 16:35 wenxp2006 阅读(165) 评论(0) 推荐(0) 编辑
 
摘要: init方法在init方法中实例化必要的对象(遵从LazyLoad思想)‍init方法中初始化ViewController本身loadView方法当view需要被展示而它却是nil时,viewController会调用该方法。不要直接调用该方法。如果手工维护views,必须重载重写该方法如果使用IB维护views,必须不能重载重写该方法loadView和IB构建viewviewDidLoad方法重载重写该方法以进一步定制view在iPhone OS 3.0及之后的版本中,还应该重载重写viewDidUnload来释放对view的任何索引viewDidLoad后调用数据Model‍viewDid 阅读全文
posted @ 2012-05-13 16:31 wenxp2006 阅读(159) 评论(0) 推荐(0) 编辑
 
摘要: [代码]c#/cpp/oc代码:01#import <AVFoundation/AVFoundation.h>0203voidCBLediOS::turnOnLed()04{05AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];06if([device hasTorch]) {07[device lockForConfiguration:nil];08[device setTorchMode: AVCaptureTorchModeOn];09[device 阅读全文
posted @ 2012-05-13 16:29 wenxp2006 阅读(369) 评论(0) 推荐(0) 编辑
 
摘要: 想要在自己的iPhone项目工程中使用自定义字体,需要进行如下设置:1. 确定你项目工程的resource资源文件夹下有所要用的字体文件(.ttf,.odf)。2. 在Info.plist配置文件中新建一行(Add Row),添加key为:UIAppFonts,类型为Array或Dictionary都行;在其下建立一对键值对,key为item 0,而Value为该字体名称(如:xxfont.ttf)。3. 在要使用自定义字体的项目代码中书写:实例对象.font = [UIFont fontWithName:@"xxfont" size:20.0];即可。 阅读全文
posted @ 2012-05-13 16:25 wenxp2006 阅读(107) 评论(0) 推荐(0) 编辑
 
摘要: 1. 遍历NavigationController栈中的视图XXView *rootViewController = nil;for (UIViewController *VC in self.navigationController.viewControllers) { if ([VC isKindOfClass:[XXView class]]) { rootViewController = (XXView *)VC; } } [self.navigationController popToViewController:rootViewController a... 阅读全文
posted @ 2012-05-13 16:15 wenxp2006 阅读(121) 评论(0) 推荐(0) 编辑
 
摘要: 方法一:利用私有API添加新图标直接上代码:在具体视图控制器中重写addStatusBarImageNamed:removeOnExit:方法- (void) addStatusBarImageNamed:(NSString*)image removeOnExit: (BOOL) remove {if(_statusbarimage!=nil && _responds) {if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"statusBarEnabled"] integerValue] == 阅读全文
posted @ 2012-05-13 16:13 wenxp2006 阅读(204) 评论(0) 推荐(0) 编辑