我目前拥有并使用Xcode 5,虽然我想尝试使用Xcode 6,但我不想将它用于生产.我可以将它们安装在同一台计算机上,而不会相互冲突吗?我在Xcode 6的下载页面上找不到任何相关内容.
根据Apple TV界面指南,当你不在游戏的主菜单时,你应该使用菜单按钮作为暂停按钮(在这种情况下它应该返回到Apple TV OS)菜单).但是,我无法在任何地方找到您应该如何检测遥控器上的硬按钮输入(而不是屏幕上的软按钮).
我发现这个短节目指南使用控制器,几乎似乎在暗示,你应该使用遥控器在这种情况下,控制器,但我不能不认为有一个简单的方法.恩.
-(void)buttonPressBegan:(NSEvent*)event
Run Code Online (Sandbox Code Playgroud)
等等(那不是真的......我只是希望有类似的东西).是什么/有一种制裁的方式来检测这个?
我正在尝试按照教程在SpriteKit中制作iOS游戏,同时也将其移植到OS X.(当我制作自己的游戏时,我打算做到这一点,而且它有助于学习陷入困境.不仅仅是复制勺子喂食代码)
到目前为止,一切都精神错乱(双关语),我已经能够解决或研究我遇到的每一个问题,但唉,它只能持续这么久.这可能是一件很愚蠢的事情,但它却躲避了我.
我正试图从plist字典中提取一个字符串
self.position = CGPointFromString([characterData objectForKey:@"StartLocation"]);
StartLocation是坐标的关键,格式为"{0,0}".
在为iOS构建时,它可以很好地工作.在为OS X构建时,它会失败.我认为问题在于"CGPointFromString"是iOS开发环境所独有的.它仅出现在iOS文档中.问题是,我找不到任何OSX等价物.
我意识到我可以通过将坐标分成两个浮点值并使用两个单独的x和y字典条目来推动它工作,但我不知道教程的编写者是否故意这样做并且会破坏某些内容道路,加上我想知道如何在OS X上从一种数据类型转换为另一种数据类型.
请帮忙!/谢谢!
根据Apple的指导原则,按下tvOS上的菜单按钮会返回到上一个菜单,直到您进入顶层菜单,此时它将返回到OS菜单.我的问题是,如何阻止菜单按钮的默认行为并阻止它返回到OS菜单,但是当用户位于我的应用程序的顶层菜单时重新激活它?
因此,我正在AppleTV上的SpriteKit游戏中进行应用内购买,但如果付款错误或任何其他各种错误,我想显示错误.UIAlertView就是我在iOS上做的,但这不是tvOS上的一个选项.有类似的东西可以做吗?基本上,我需要弹出描述错误的东西和一个关闭弹出窗口的按钮.添加更多按钮(如UIAlertView)的能力将是锦上添花.
注意:我对此进行了一些研究,大多数事情似乎都指向使用TVML,但是,我不相信这是与SpriteKit混合使用的选项.如果它解释了如何导入TVML(我几乎一无所知)并将其与SpriteKit一起运行,我将接受与此相关的答案.我假设我正在寻找与TVML无关的答案.
我正在为 Motion 和 FCP X 开发一些 FxPlug 插件。最终,我想让它们在 Metal 中渲染,因为 Apple 正在弃用 OpenGL。
我目前正在使用 CoreImage,虽然我已经能够使用 CoreImage 功能在 FxPlug SDK 之外进行 Metal 处理,但 FxPlug 只向我提供帧作为 OpenGL 纹理。我尝试将其传递到 CoreImage 过滤器中,但最终收到此错误:
Cannot render image (with an input GL texture) using a metal-DG context.
Run Code Online (Sandbox Code Playgroud)
经过一番研究,我发现我应该使用 CVPixelBuffers 在两者之间共享纹理,但是在尝试使用这种方法编写代码一段时间后,我开始相信这是一种 WRITE 的方式(如从头开始创建)到共享缓冲区,但不在之间进行转换。虽然这可能不正确,但我无法找到一种方法来使现有的 GL 纹理存在于 CVPixelBuffer 中。
TL;DR:我已经找到了从 CVPixelBuffer 获取生成的 Metal 或 OpenGL 纹理的方法,但我找不到从现有 OpenGL 纹理创建 CVPixelBuffer 的方法。我并不打算采用这种方法,因为我的最终目标是简单地从 OpenGL 转换为 Metal,然后再转换回 OpenGL(理想情况下以有效的方式)。
还有其他人找到了将 FxPlug 与 Metal 一起使用的方法吗?有没有好方法从 OpenGL 纹理转换为 Metal/CVPixelBuffer?
我已经URLSessionWebSocketDelegate设置并实施了
urlSession(_ session: URLSession, webSocketTask: URLSessionWebSocketTask, didCloseWith closeCode: URLSessionWebSocketTask.CloseCode, reason: Data?)
Run Code Online (Sandbox Code Playgroud)
然而,如果服务器正确断开连接,它似乎只会影响委托。如果连接断开或服务器不提供断开连接代码,则委托函数永远不会运行。我还尝试检查URLSessionWebSocketTask属性closeCode以及closeReason断开连接之前和之后,除非服务器发送正确的断开连接代码,否则它们不会更改。
虽然我可以控制服务器并且可以确定故意断开连接有代码,但如果网络连接中断会发生什么?或者如果服务器宕机了?我认为委托函数仍然应该被调用。
有趣的是,我的监听函数出现错误,错误内容如下:
Error Domain=NSPOSIXErrorDomain Code=57 "Socket is not connected" UserInfo={NSErrorFailingURLStringKey=[urlomitted], NSErrorFailingURLKey=[urlomitted]
Run Code Online (Sandbox Code Playgroud)
因此,虽然如果我看到错误 57,我可以手动断开套接字,但我不知道这是否适用于所有不同的断开连接变体。
我认为我要么做错了什么,要么这是一个错误,但我找不到其他人有同样的问题,所以我想我应该在提交雷达之前询问。
我正在尝试使用应用内购买开发一款tvOS游戏,但似乎iTunes Connect中用于创建iap项目的唯一选项适用于iOS和Mac应用程序 - 似乎没有任何指向tvOS的内容.
我已尝试在iTunes Connect上使用此游戏的iOS应用程序使用相同的捆绑ID来获取游戏中列出的那些项目,但我从Apple的服务器返回的所有内容都是空数组.
StoreKit可用于tvOS并且代码构建并且似乎运行得很好.他们甚至更新了iTunes Connect来处理这些东西吗?
这个问题与 macOS 有关,与 iOS 无关。
请注意,此问题被报告为此问题的重复项。该页面上的答案要么与 iOS 有关(无关),要么使用已弃用的WebView解决方案,这正是我的问题首先要解决的问题。
因此,Apple 已弃用WebView,WKWebView但我没有看到能够从新视图类型导出(或打印)PDF 的有效解决方案。我已经在委托方法中尝试了以下(以及更多)webView(_ webView: WKWebView, didFinish navigation: WKNavigation!)
1.
let pdfData = webView.dataWithPDF(inside: webView.frame)
try? pdfData.write(to: URL(fileURLWithPath: "/filepath/to/test.pdf"))
Run Code Online (Sandbox Code Playgroud)
这导致了一个空白的 pdf 文件。
2.
webView.takeSnapshot(with: nil) { (image, error) in
if let error = error {
print("Error: \(error)")
return
}
guard let image = image else {
print("No image")
return
}
try? image.tiffRepresentation?.write(to: URL(fileURLWithPath: "/path/to/test.tif"))
}
Run Code Online (Sandbox Code Playgroud)
虽然这在图像中获得了实际内容,但它是一个(巨大的)渲染的位图图像,丢失了所有文本/字符串数据,它也只显示屏幕上可见的内容,没有超出窗口边缘的内容。
同时,根据网络上提供的大量示例,使用 WebView 效果很好并且符合预期。我是否应该相信苹果发布了一个已弃用框架的半成品替代品,或者我做错了什么?
Foundation 的Datestruct 提供了Date.addingTimeInterval(_:)和Date.advanced(by:),它们在功能上看起来是相同的,但显然是不同的方法。它们之间实际上有区别还是它们最终相同?
查看文档,advanced(by:)什么都没有,addingTimeInterval(_:)只说
要添加的值,以秒为单位。
与 NSDate 相比,advanced(by:)完全缺失。剧情变厚了!
(FileManager)fileExistsAtPath:isDirectory:和(URL).hasDirectoryPath之间的实际区别是什么?
我正在关注一些教程,他们首先使用FileManager方法,但随后似乎始终使用URL方法。在我看来,URL方法似乎更简洁,更容易记住。是否有任何理由改用FileManager方法?(如果答案是肯定的,请提供示例)
objective-c ×4
swift ×4
tvos ×3
ios ×2
macos ×2
apple-tv ×1
core-image ×1
foundation ×1
metal ×1
opengl ×1
pdf ×1
porting ×1
urlsession ×1
webkit ×1
websocket ×1
wkwebview ×1
xcode ×1
xcode5 ×1
xcode6 ×1