Tag: objective c

在objective-c / cocoa-touch中有一个方便的function来find最小的数字吗?

我有两个号码,需要返回下面的号码。 有什么function我可以使用? 当然这是一件容易的事情,我可以做一个if语句。 我只是想知道。

当用户按下iPhone上的button时,更改UIButton上的图像

当用户按下该button时,我想更改UIButton上的图像。 所以,我写了 btnthumbnail2 setImage:[UIImage imageNamed:@"leaderboard_ov.png"] forState:UIControlStateNormal]; 之后我改变了看法。 图像正在改变,但不显示改变的图像。我认为控制进入下一个视图这就是为什么发生。 但是我想展示这个变化,我该怎么做? Plz帮我做这个..

UITextView禁用文本select

可能重复: 如何禁用UITextView中的复制,剪切,select,全选 我很难得到UITextView禁用select文本。 我试过了: canCancelContentTouches = YES; 我试过子类化和覆盖: – (BOOL)canPerformAction:(SEL)action withSender:(id)sender (但是只有在select之后才被调用) – (BOOL)touchesShouldCancelInContentView:(UIView *)view; (我没有看到被解雇了) – (BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view; (我也没有看到被解雇) 我错过了什么?

检查一个NSDate是否大于另一个

if (datStartDate > datEndDate) { 这似乎并不奏效。 我知道有一个isEqual等,但我该如何执行“是大于”? 有两个NSDate 。

iOS:将urlparsing为细分

采取NSURL对象的有效方法是什么? foo://name/12345 并将其分解为一个string和一个无符号整数,其中stringval是“名称”和无符号整数是12345? 我假设该algorithm涉及将NSURL转换为NSString,然后使用NSScanner的一些组件完成剩下的部分?

关于带有Textfield的UIAlertView …

我有这个代码来提示与文本字段的UIAlertView: UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:NSLocalizedString(@"New List Item", @"new_list_dialog") message:@"this gets covered" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil]; UITextField *myTextField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 25.0)]; [myTextField setBackgroundColor:[UIColor whiteColor]]; [myAlertView addSubview:myTextField]; [myAlertView show]; [myAlertView release]; 但我想添加一个获得文本框的值,用户点击“确定”后,用户点击后,我想调用一个方法,我怎么可以分配给myAlertView? 谢谢。

如何设置kAudioUnitSubType_Distortion

我正在尝试编写一个添加声音效果的iOS应用程序。 我试图在auconverter和remoteIO之间放置一个效果audio单元(例如,失真和混响)。 build立了所谓的AU之后,就没有声音了。 NewAUGraph(&mAuGraph); AUGraphOpen(mAuGraph); AUNode remoteOutputNode, converterNode, effectNode; AudioUnit remoteIOAudioUnit, converterUnit, effectUnit; AudioComponentDescription cd; cd.componentManufacturer = kAudioUnitManufacturer_Apple; cd.componentFlags = cd.componentFlagsMask = 0; // remote io cd.componentType = kAudioUnitType_Output; cd.componentSubType = kAudioUnitSubType_RemoteIO; AUGraphAddNode(mAuGraph, &cd, &remoteOutputNode); // converter cd.componentType = kAudioUnitType_FormatConverter; cd.componentSubType = kAudioUnitSubType_AUConverter; AUGraphAddNode(mAuGraph, &cd, &converterNode); // ipodeq cd.componentType = kAudioUnitType_Effect; cd.componentSubType = kAudioUnitSubType_Distortion; AUGraphAddNode(mAuGraph, […]

AFNetworking和离线模式下的SDURLCache不起作用

我正在使用AFNetworking和SDURLCache来处理所有的networking操作。 我有这样的SDURLCache设置: SDURLCache *urlCache = [[SDURLCache alloc] initWithMemoryCapacity:1024*1024*2 // 2MB mem cache diskCapacity:1024*1024*15 // 15MB disk cache diskPath:[SDURLCache defaultCachePath]]; [urlCache setMinCacheInterval:1]; [NSURLCache setSharedURLCache:urlCache]; 我所有的请求都使用cachePolicy NSURLRequestUseProtocolCachePolicy ,根据苹果文档,它的工作原理是这样的: 如果请求中不存在NSCachedURLResponse,则从原始源获取数据。 如果请求存在caching响应,则URL加载系统检查响应以确定是否指定内容必须重新生效。 如果内容必须重新确认,则与原始源进行连接以查看是否已经改变。 如果没有改变,则从本地caching返回响应。 如果发生了变化,则从原始源获取数据。 如果caching的响应没有指定内容必须重新生效,则检查响应中指定的最大使用期限或到期date。 如果caching的响应足够近,则从本地caching中返回响应。 如果响应被确定为陈旧,则检查起源的新数据。 如果更新的数据可用,则从源发送源获取数据,否则从caching中返回。 所以,即使在飞机模式下,只要caching没有陈旧,一切都可以正常工作。 当caching过期(max-age等)时,失败块被调用。 我一直在SDURLCache里面挖掘一点,这个方法返回一个有效数据的响应(我把数据parsing成一个string,它包含caching的信息) – (NSCachedURLResponse *)cachedResponseForRequest:(NSURLRequest *)request { request = [SDURLCache canonicalRequestForRequest:request]; NSCachedURLResponse *memoryResponse = [super cachedResponseForRequest:request]; if (memoryResponse) { […]

你可以手动实现cocoa绑定?

我已经在我自己的NSView子类实现绑定了一个裂缝。 它可以工作,但从nib文件绑定到文件所有者时,保留周期存在问题。 稍微阅读一下后,我发现苹果几年前也有同样的问题,但是已经用一些无证的类(NSAutounbinder)修复了它。 关于保留周期问题,有一个冗长的讨论http://www.cocoabuilder.com/archive/message/cocoa/2004/6/12/109600 。 解决方法是在窗口控制器释放之前解除所有绑定,而不是在解除分配之前,放在像windowWillClose:这样的地方。 这对我来说似乎是一个不必要的手段。 我的问题是这样的:有没有办法使自定义绑定,以及由苹果公司的作品,而不使用无证的function? 我是否以错误的方式去做这件事? 更新2:我发现了一个解决scheme,允许手动实现的绑定工作完全像苹果的绑定。 它利用未logging的NSAutounbinder类,没有实际使用未logging的特征。 我将在今天晚些时候发布解决scheme。 更新: 我试着使用exposeBinding:它似乎没有任何区别 。 然而, NSObject的bind:toObject:withKeyPath:options:一半的工作。 它传播从绑定到绑定(即从模型/控制器到查看)的变化,但不会以相反的方式工作。 而且,虽然绑定器显然被观察到, observeValueForKeyPath:ofObject:change:context:从不被触发。 示例项目在这里: http : //www.tomdalling.com/wp-content/BindingsTest.zip 苹果的文档表明你实际上必须重写bind:toObject:withKeyPath:options:来实现手动绑定。 看到这里: http : //developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/Concepts/HowDoBindingsWork.html 侧注:我已经调查了无证的NSAutounbinder是如何工作的,这里是我所知道的。 绑定创build到NSWindowController时,绑定对象实际上是一个NSAutounbinder,从NSWindowController通过 – [NSWindowController _autounbinder]获取。 NSAutounbinder是NSWindowController对象的非保留代理。 避免保留周期问题是没有保留的。 当 – [NSWindowController release]被调用并且retainCount == 1时,NSAutounbinder将所有绑定解除绑定到它自己。 这确保在释放对象之前没有悬挂指针。

iOS:警告“尝试呈现其视图不在窗口层次结构中的ViewController”

当我尝试在导航控制器上显示一个ActivityController时,我收到以下警告, Attempt to present <UIActivityViewController: 0x15be1d60> on <UINavigationController: 0x14608e80> whose view is not in the window hierarchy! 我试图通过下面的代码呈现视图控制器, UIActivityViewController * activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities]; activityController.excludedActivityTypes = excludeActivities; UIViewController *vc = self.view.window.rootViewController; [vc presentViewController: activityController animated: YES completion:nil]; [activityController setCompletionHandler:^(NSString *activityType, BOOL completed) { NSLog(@"completed"); }]; 这里怎么了?