Tag: objective c

我需要释放xib资源吗?

如果我有一个像UILabel链接到一个xib文件,我需要释放它在我的看法dealloc? 我问的原因是我没有分配,这让我觉得我不需要释放它呢? 例如(在标题中): IBOutlet UILabel *lblExample; 在执行中: …. [lblExample setText:@"whatever"]; …. -(void)dealloc{ [lblExample release];//????????? }

Objective-C块更好的asynchronous控制stream程

我正在使用AFNetworking对Web服务进行asynchronous调用。 这些呼叫中的一些必须被链接在一起,其中呼叫A的结果由呼叫C使用的呼叫B使用,等等 AFNetworking会在创build操作时处理设置了成功/失败块的asynchronous调用结果: NSURL *url = [NSURL URLWithString:@"http://api.twitter.com/1/statuses/public_timeline.json"]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) { NSLog(@"Public Timeline: %@", JSON); } failure:nil]; [operation start]; 这会导致嵌套的asynchronous调用块迅速变得不可读。 当任务不相互依赖,而是必须并行执行,执行取决于所有操作的结果时,情况会更加复杂。 似乎更好的方法是利用承诺框架来清理控制stream程。 我遇到了MAFuture,但无法弄清楚如何最好地将其与AFNetworking相结合。 由于asynchronous调用可能有多个结果(成功/失败),并没有返回值,它似乎不是一个理想的契合。 任何指针或想法,将不胜感激。

如何使用Key-Value Coding来判断对象是否存在一个对象?

我想testing一个对象是否在iPhone SDK中有一个可写的@property。 这样做的一个可能的方法是检查-valueForKey:方法,但这似乎相当不雅! 例: @try { id *value = [instance valueForKey:@"myProperty"]; } @catch (NSException * e) { // Key did not exist } 有没有更好的方法来做到这一点?

为什么我的MCSession节点随机断开?

我使用MCNearbyServiceBrowser和MCNearbyServiceAdvertiser将两个对等体连接到MCSession。 我可以使用MCSession的sendData方法在它们之间发送数据。 所有似乎按预期工作,直到我随机(而不是由于我控制任何事件)通过会话的MCSessionDelegate didChangeState处理程序接收MCSessionStateNotConnected。 此外,MCSession的connectedPeers数组不再拥有我的同伴。 两个问题:为什么? 和我如何保持MCSession断开连接?

自动属性综合(@property)和inheritance

随着XCode 5.1,出现一个新的警告。 这让我明白,我做错了什么。 这个想法是有一个对象(模型),它是从原始类inheritance的可变版本。 所以这个想法是打开一个readonly的属性来readwrite @interface Car : NSObject @property (strong, readonly) NSString *name; @end @interface MutableCar : Car @property (strong, readwrite) NSString *name; @end 这些需要在不同的文件(如两个正常的类)。 它给出了这个警告: Auto property synthesis will not synthesize property 'name' because it is 'readwrite' but it will be synthesized 'readonly' via another property 所以我想知道什么是正确的解决scheme来做这样的事情,如果这是可能的。 如果需要编写访问器,并避免使用自动合成等,只需要精确,并支持文件或任何其他答案。

从后台线程到服务器的asynchronous请求

当我试图从后台线程对服务器执行asynchronous请求时,我遇到了这个问题。 我从来没有得到这些要求的结果。 显示问题的简单例子: @protocol AsyncImgRequestDelegate -(void) imageDownloadDidFinish:(UIImage*) img; @end @interface AsyncImgRequest : NSObject { NSMutableData* receivedData; id<AsyncImgRequestDelegate> delegate; } @property (nonatomic,retain) id<AsyncImgRequestDelegate> delegate; -(void) downloadImage:(NSString*) url ; @end @implementation AsyncImgRequest -(void) downloadImage:(NSString*) url { NSURLRequest *theRequest=[NSURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:20.0]; NSURLConnection *theConnection=[[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; if (theConnection) { receivedData=[[NSMutableData data] retain]; } else { } […]

如何改变图像中的特定颜色?

我的问题是,如果我有一个狮子形象,只是我想改变狮子的颜色,而不是背景颜色。 为此,我提到了这个问题,但是却把整个图像的颜色变成了一个整体。 而且图像看起来不怎么样。 我需要像Photoshop一样的颜色变化。 是否可以在coregraphics中做到这一点,或者我必须使用任何其他库。 编辑:我需要颜色变化像iQuikColor应用程序

如何在iOS中使用“容器视图”?

我注意到了XCode中的UI组件: Container View 。 基于提供的描述,我想利用它来在几个不同的屏幕上显示我的应用程序的可重用组件。 我一直在网上查找尝试find一个基本的教程或一些文件,但我没有发现任何使用。 请有人build议如何连接并使用它? 目前看来, container view似乎没有resize,这是有问题的。 任何提示如何启用此将不胜感激。 干杯。

NSDateFormatter,我做错了什么或这是一个错误?

我试图以某种格式打印date: NSDate *today = [[NSDate alloc] init]; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyyMMddHHmmss"]; NSString *dateStr = [dateFormatter stringFromDate:today]; 如果iPhone设置为24小时制,则工作正常,但另一方面,如果用户已将其设置为24小时制,则返回AM / PM(直到您切换此设置才能正常工作),则会将AM追加到AM /下午,尽pipe我没有要求: 20080927030337 PM 我做错了什么或者这是固件2.1的错误? 编辑1:使描述更清晰 编辑2解决方法:事实certificate,这是一个错误,解决它我把AM和PM字符设置为“”: [dateFormatter setAMSymbol:@""]; [dateFormatter setPMSymbol:@""];

iOS – closures应用程序时的CoreLocation和geofencing

我已经阅读了很多有关geofencing我的iOS应用程序的教程(即这里 ),但没有提到iOS是否允许在应用程序closures时处理任何特定于应用程序的位置数据。 例如,我明白,当应用程序在后台,这些服务将仍然存在(如果编码正确),但如何当用户双击主页button,closures应用程序? 位置数据仍然可以获得?