Questions tagged «cocoa»

Cocoa是Apple的macOS应用程序开发框架,由Foundation,Application Kit和Core Data组成。对iOS问题使用“可可触摸”标签。

11
如何将NSString截断为设置的长度?
我进行了搜索,但是令人惊讶地找不到答案。 我NSString要缩短长度。我希望最大长度为20个字符左右。我读过某处最好的解决方案是使用substringWithRange。这是截断字符串的最佳方法吗? NSRange stringRange = {0,20}; NSString *myString = @"This is a string, it's a very long string, it's a very long string indeed"; NSString *shortString = [myString substringWithRange:stringRange]; 看起来有些微妙(如果字符串短于最大长度,则会崩溃)。我也不确定它是否是Unicode安全的。有更好的方法吗?有人对此有很好的分类吗?

17
在Swift中获取应用名称
如何在Swift中获取应用程序名称? 谷歌搜索给了我这个: [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleName"]; 我将其转换为Swift;错误-方法不存在: NSBundle.mainBundle().infoDictionary.objectForKey("CFBundleName")
69 cocoa  swift 

5
NSPredicate对多关系的不区分大小写匹配
我正在实现一个搜索字段,用户可以在其中输入字符串以过滤视图中显示的项目。每个显示的对象都有keywords一对多的关系,我希望能够根据其关键字过滤对象。每个关键字对象都有一个name属性,因此我设置了一个NSPredicate来进行如下所示的过滤: NSPredicate* predicate = [NSPredicate predicateWithFormat:@"keywords.name CONTAINS %@", self.searchString]; 此方法有效,但问题是搜索区分大小写,因此,如果关键字具有大写字母,但用户键入的全部为小写字母,则不会找到匹配项。我尝试了以下修改: NSPredicate* predicate = [NSPredicate predicateWithFormat:@"keywords.name CONTAINS[c] %@", self.searchString]; 但这对匹配的大小写没有影响。有没有一种方法可以仅使用普通谓词来进行不区分大小写的匹配?还是我需要在关键字类上实现某种自定义访问器,例如编写一个lowercaseName方法并与小写版本的搜索字符串进行匹配? 附录:经过进一步探索,添加自定义访问器的解决方法可以手动使用NSPredicate正常,但是在将NSFetchRequest与Core Data一起使用时根本不起作用,仅当查询Core Data模型中定义的属性时才有效。

12
NSMutableArray-强制数组仅保留特定的对象类型
有没有一种方法可以强制NSMutableArray仅保留一种特定的对象类型? 我有如下的类定义: @interface Wheel:NSObject { int size; float diameter; } @end @interface Car:NSObject { NSString *model; NSString *make; NSMutableArray *wheels; } @end 如何强制轮阵列仅使用代码保存轮对象?(绝对不是其他对象)


5
与-respondsToSelector等效的类方法:
是否有一个等效于的类方法-respondsToSelector:? 像+respondsToSelector:什么? 我问的原因是因为通过-respondsToSelector:在类级别上实现,我得到了编译器警告:“在协议中找到了'-respondsToSelector:'而不是'+ respondsToSelector:'”。 代码如下: Class <SomeProtocol> someClass = [someInstance class]; if ([someClass respondsToSelector:@selector(someSelector:)]) { someVar = [someClass someSelector:someData]; }


1
在OS X中每个WebView单独的cookie jar
我一直在努力实现在macOS中每个WebView拥有唯一(不共享)cookie罐的目标(cookie管理在iOS上的工作方式不同)。 在阅读了很多StackOverflow问题并仔细阅读了文档之后,我在以下文章中找到了最接近我的问题的解决方案: (如何处理HTTP cookie) (如何处理JavaScript document.cookie cookie) 我已经使用它们建立了一个示例应用程序:https : //github.com/jjconti/swift-webview-isolated 基本思想是从WebResourceLoadDelegate和WebPolicyDelegate协议中实现必要的方法,并使用BSHTTPCookieStorage来存储和检索cookie。另外,我的示例应用程序允许保存cookieStorage对象,以便可以在以后的执行中重新加载它。 不幸的是,该应用程序无法在每个网站上正常运行(文章的作者针对的是一个特定的网站)。例如Gmail和NewRelic,您在登录后(或执行某些操作后)会立即注销。这使我怀疑cookie存储实现中的一个错误,但是我还没有找到。 有人可以告诉我是否缺少我吗?
67 macos  cocoa  cookies  webview 


4
iPhone XCode-如何在应用程序图标下方更改标题
重命名应用程序的最佳方法是什么,以便应用程序图标下方的标题可以有空格,而构建文件没有空格。(即标题为“我的项目”,构建文件为MyProject.app) 我更改了PRODUCT_NAME,但是当我执行该操作时,该应用程序文件中还包含空格。 重命名所有字段似乎都可以正常工作,除非我找不到EXECUTABLE_NAME,这是“可执行文件”的默认值。 谢谢Tee


4
将NSData写入文件的最简单方法
NSData *data; data = [self fillInSomeStrangeBytes]; 现在我的问题是如何data以最简单的方式将此文件写入文件。 (我已经有一个NSURL file://localhost/Users/Coding/Library/Application%20Support/App/file.strangebytes)
67 file  cocoa  file-io  save 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.