草庐IT

watchkit2-extension

全部标签

Swift 和 watchkit : pushControllerWithName not being called at all

我一直都是使用swift/watchkit中的pushControlledWithName方法移动到另一个界面Controller,基本上是这样的:self.pushControllerWithName("newinterfacecontroller",context:nil)在我的一些项目中,当我把它放在一个函数中时(比如用户按下按钮的地方),它根本就不会被调用。没有错误,就好像代码根本不存在一样。如果我创建一个新的测试项目并尝试它,它就会起作用。我对这里发生的事情感到困惑。发生的事情的例子:@IBActionfuncbutton1Action(){println("test")se

ios - 尝试为表格设置行数时 WatchKit 应用程序崩溃

所以,我在主界面Controller中有一个带有WKInterfaceTable的WatchKit应用程序,Storyboard的导出已设置,所以它不是零,表行标识符也已设置并与字符串匹配,我在setNumberOfRows中使用:withRowType:方法。为了更好地理解,这里是接口(interface)Controller的简化代码:classMainInterfaceController:WKInterfaceController{@IBOutletweakvartable:WKInterfaceTable!overridefuncawakeWithContext(contex

ios - RPScreenRecorder 如何录制应用Action Extension的屏幕音视频?

我想使用目标ActionExtension录制我的应用程序的屏幕、音频和视频。如果我将此代码放在普通应用程序中,它可以工作,但在ActionExtension中则不会。@IBActionfuncrecButton(_sender:Any){ifrecButton.currentTitle=="stop"{stopRecording()recButton.setTitle("rec",for:.normal)}else{recButton.setTitle("stop",for:.normal)RPScreenRecorder.shared().isMicrophoneEnabled=t

ios - 如何在 Swift Today Extension 中获取设备类型

有没有办法确定运行iOSTodayExtension的设备类型。我无法在Swift中完成。我需要这样的东西:-(BOOL)isiPad{if(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad){returnYES;}else{returnNO;}}但在Swift中和TodayExtension。编辑:letIS_IPAD=(UI_USER_INTERFACE_IDIOM()==UIUserInterfaceIdiomPad);不适用于iOSTodayExtensions。 最佳答案

ios - 在 WatchKit 中使用 slider

我希望用户能够在WatchKit应用程序上选择年份范围,因为WatchKit中没有UIPicker,我可以使用slider让用户点击+或-来增加年份,以显示在我上面的标签?我阅读了文档,但仍然无法弄清楚如何实现setNumberOfSteps方法……或者,是否有比slider更好的方法来实现此目的?classInterfaceController:WKInterfaceController{@IBOutletweakvarlabel:WKInterfaceLabel!@IBOutletweakvarsliderOutlet:WKInterfaceSlider!@IBActionfunc

iOS 10 Today Extension 不会进入扩展模式,保持紧凑

我正在编写TodayExtension,它在我的iOS9设备上运行正常。在iOS10上,我读过很多帖子说我们需要为扩展设置扩展模式以扩展到超过110高度,但是当我遵循所有关于如何执行此操作的答案时,我的小部件不断停留在紧凑模式下。这是我用的@available(iOS10.0,*)@available(iOSApplicationExtension10.0,*)funcwidgetActiveDisplayModeDidChange(_activeDisplayMode:NCWidgetDisplayMode,withMaximumSizemaxSize:CGSize){ifactiv

swift - 在 Swift 应用程序中,为什么 WatchKit 和 NSNotificationCenter 只能以一种方式工作?

当从WatchKitExtensionInterfaceController发送NSNotificationCenter通知时,我们可以从ViewController获取它,但是当从ViewController发送通知时,我们无法从WatchKitExtensionInterfaceController获取它。这是工作通知;我们在ViewController中设置通知为overridefuncviewDidLoad(){super.viewDidLoad()NSNotificationCenter.defaultCenter().addObserver(self,selector:"a

ios - 在 WatchKit (Apple Watch) 中设置非系统字体

我有一个使用MenloBold字体作为标签的AppleWatch应用程序。在支持watchkit的第一个Xcode版本中,我能够将Storyboard中的标签字体更改为MenloBold36,并且一切正常。在当前版本(Xcode6.2)中,这不再是可能的,所以我找到了关于如何在AppleWatch中设置自定义字体的教程,http://www.tech-recipes.com/rx/53710/how-do-i-use-custom-fonts-in-my-apple-watch-app/我在本教程中找到了这段代码:funcprintFonts(){letfontFamilyNames=

ios - 如何从父 iphone 应用程序触发 watchkit 应用程序?

有没有办法从主机iPhone应用程序以编程方式打开WatchKit应用程序?如果不支持,我可以触发显示在AppleWatch上的本地通知并点击它会打开相应的WatchKit应用程序吗? 最佳答案 您无法从iOS应用程序打开WatchKit扩展程序。在Watch上提醒用户的唯一方法是发送远程或本地通知。但是,如果您的iOS应用程序在前台,这将不起作用,因为通知只会路由到iPhone而不是Watch。 关于ios-如何从父iphone应用程序触发watchkit应用程序?,我们在StackO

ios - 从 WatchKit 触发 UILocalNotification

我在Swift中有一个Xcode项目,目标如下:iOS应用WatchKit扩展/WatchKit应用“公共(public)”项目,由“主”项目和扩展使用在普通项目中我有以下代码:publicclassfuncscheduleNotification(seconds:Int){varnotification=UILocalNotification()notification.fireDate=NSDate().dateByAddingTimeInterval(NSTimeInterval(seconds))notification.alertBody="item"notification