草庐IT

osx-extensions

全部标签

swift - OSX/swift : Call function at a specific date/time

我试图让我的应用在特定时间间隔调用一个函数。例如,我可能希望在整点整点调用该函数,例如凌晨1:00、凌晨2:00等等。我曾尝试使用NSTimer执行此操作,但我发现在机器休眠或关闭电源后恢复时很难保持同步。我的应用程序有没有办法检测我们何时到达特定日期和时间并在那个时候调用函数?谢谢。 最佳答案 您可以试试GrandCentralDispatch。具体使用dispatch_walltime()创建一个dispatch_time_t表示您希望作业运行的时间,然后使用dispatch_after()在指定时间将作业提交给GrandCen

ios - Swift String Extension 替换第一个字符而不出现

我想替换我的字符串中的一个字符,但只替换该字符的第一次出现。我正在使用这个字符串扩展!但它正在取代所有出现的地方extensionString{funcreplace(target:String,withString:String)->String{returnself.stringByReplacingOccurrencesOfString(target,withString:withString,options:NSStringCompareOptions.LiteralSearch,range:nil)}} 最佳答案 你必须指

ios - 什么是 extension_access_modifier swiftlint?

我将Swiftlint添加到一个项目中,但我无法理解针对extension_access_modifier的警告是什么。我主要在声明为public的类上看到它,但在整个代码库中散布着一些添加功能的扩展。publicclassFoo{}//InSomeOtherClass.swiftextensionFoo{//ExtensionAccessModifierViolation:Prefertouseextensionaccessmodifierspublicfuncbaz()}只要在另一个类中有extensionFoo,我就会在扩展上收到警告。谁能解释一下这是什么?

ios - WatchKit Extension 看不到保存在 NSUserDefaults 和 App Group 中的数据

我浏览了大量的SO帖子,这曾经有效,但它停止了工作。我不确定发生了什么。我使用watchOS1.0开发了这款iPhone+WatchKit应用程序,一切正常。我已经将我的应用程序、项目和AppleWatch升级到watchOS2.0,现在我无法使用我的应用程序组通过NSUserDefaults获取任何数据。在主机应用程序和WatchKit扩展的Xcode中启用了应用程序组。我什至还尝试为WatchKit应用打开它。我的群组名称称为“group.com.mycompany.myapp”(包含我真实的公司名称和应用程序名称),并且在所有目标上都已选中。我已确认我的主机应用和WatchKit

swift - OSX Sandbox WKWebView 在内部加载本地文件

我有一个绑定(bind)到NSOpenPanel的WKWebView。我让用户选择一个文件,但我无法加载该文件。当应用程序没有沙盒时我没有任何问题,但是一旦我打开沙盒我就无法让它在OSXwebView.loadFileURL(url,allowingReadAccessToURL:url),但它在 最佳答案 NSURL从你的NSOpenPanel到NSData与initWithContentsOfURL然后从这个NSData中得到一个NSString然后使用WKWebViewloadHTMLString(_string:String

swift - 如何将 Swift Package Manager native 模块与 OSX 上的第 3 方框架链接起来

所以根本不清楚如何在SPM模块映射的链接行中指定3rdparty.framework。任何人都有一个有效的例子吗?为文档完备的工具欢呼三声!moduleDudeNative[system]{header"/Library/Frameworks/DudeNative.framework/Versions/A/Headers/DudeNative.h"link"DudeNative"export*} 最佳答案 链接声明指定了一个库或框架,如果封闭模块被导入到该程序的任何翻译单元中,则该程序应该链接到该库或框架。在您的情况下,您指示链接器

macos - 使 Root View Controller 在 mac OSX swift 中消失

我正在尝试从一个Controller移动到另一个Controller,但我希望RootViewController在打开另一个View时消失。我只看到弹出窗口、模型和工作表,但RootViewController在后台仍然可见。例如在登录页面中,当我单击注册时,会出现注册页面,而登录页面会消失,反之亦然。在OSX中有没有办法做到这一点? 最佳答案 在stackoverflow上,通常的做法是显示您已经尝试过的代码,我建议您阅读:Howtoaskagoodquestion关于您的问题:您需要从其父View中删除要隐藏的View。vie

ios - 新 Xcode 7.3 : Swift NSDate extension with nullable convenience init crashes EXC_BAD_ACCESS

我有这个带有可为空初始化的NSDate扩展,它一直运行良好,直到我更新到新发布的Xcode7.3。现在它因EXC_BAD_ACCESS而崩溃。extensionNSDate{convenienceinit?(dateString:String,formatString:String?){letdateFormatter=NSDateFormatter()dateFormatter.dateFormat=formatStringletnewDate:NSDate?=dateFormatter.dateFromString(dateString)ifletnewNewDate=newDat

swift - 如何使用 Share Extensions Swift 共享包含标记的笔记

我已经弄明白了如何共享笔记的一般内容(文本和图片)。但我目前处理问题的方式是不保留注释的标记(标题、列表等)。我刚收到纸条的纯文本。例如,当您与Mail共享便笺时,您可以看到标记已传输。有没有办法为您自己的应用做到这一点?我目前只收到纯文本的解决方案:classShareViewController:UIViewController{overridefuncviewDidLoad(){ifletcontent=extensionContext!.inputItems[0]as?NSExtensionItem{//Verifytheproviderisvalidifletcontents

cvc-complex-type.2.4.a: 发现了以元素 ‘base-extension‘ 开头的无效内容。应以 ‘{layoutlib}‘ 之一开头

最近,在使用最新版的AndroidStudio打开一个两年前的项目时候,报了一个如下的错误:【cvc-complex-type.2.4.a:发现了以元素‘base-extension‘开头的无效内容】。应以‘{layoutlib}‘之一开头。之所以出现上面的错误,官方的解释是:【跟随ArcticFox更新的其中一个重点就是AGP7.0的调整…使用AndroidGradleplugin7.0构建时需要JDK11才能运行Gradle…并且只要你更新到AndroidStudioArcticFox,它是直接捆绑了JDK11并将Gradle配置为默认使用它,所以大多数情况下,如果你本地配置正常,是可以直