接收有关 Reality Composer 动画结束的 Xcode 通知

2023-12-10

我有以下可以正确加载的 Reality Composer 项目。正如您所看到的,当动画完成时,它应该使用关键字“attackComplete”进行通知。

我如何收到此通知?

enter image description here

import RealityKit
import ARKit

class ViewController: UIViewController, ARSessionDelegate {
    
    @IBOutlet var arView: ARView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let boxAnchor = try! Experience.loadOrcAttack()
        arView.session.delegate = self
        arView.scene.anchors.append(boxAnchor)
        print("done")
    }
    
    func session(_ session: ARSession, didUpdate anchors: [ARAnchor]) {
        print(anchors)
    }
}

通过 Reality Composer 的通知,您可以实现两种场景:

动作监听器

这是您的情况,使用它很容易实现

public var onAction: ((RealityKit.Entity?) -> Swift.Void)?.

import UIKit
import RealityKit

class ViewController: UIViewController {
    
    @IBOutlet var arView: ARView!
    let scene = try! Experience.loadScene()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        arView.scene.anchors.append(scene)
        
        scene.actions.attackCompleted.onAction = notificationID   // listener
    }
 
    fileprivate func notificationID(_ entity: Entity?) {        
         print(scene.actions.attackCompleted.identifier)
    }
}

enter image description here

这里还有一张example of how .onAction 完成处理程序可以使用。

触发行动

当您需要通知 Reality Composer 的场景播放动作时,请使用以下场景:

import UIKit
import RealityKit

class ViewController: UIViewController {
    
    @IBOutlet var arView: ARView!
    let scene = try! Experience.loadScene()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        arView.scene.anchors.append(scene)
    }
    
    @IBAction func press(_ sender: UIButton) {
        scene.notifications.spinner.post()            // trigger for action
    }
}

或使用下标[NAME.NotificationTrigger]:

@IBAction func press(_ sender: NSButton) {
    scene.notifications.allNotifications[0].post()
}

enter image description here

这是另一个示例.post() 实例方法可以使用。

P. S.

如果您需要更多信息,请阅读这个帖子.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

接收有关 Reality Composer 动画结束的 Xcode 通知 的相关文章

  • 为什么这个谓词格式会变成 '= nil'

    有人建议这个线程 https stackoverflow com questions 40686005 nspredicate crash after swift 3 migration与我的问题完全相同 但是 我的应用程序没有崩溃 并且我
  • iOS 中的构建对象文件扩展名是什么?

    当我在项目中构建java对象类时 将创建带有 class扩展名的构建文件 并且人类不可读 快速构建文件怎么样 example car java gt build gt car class 构建后会是什么 car swift gt build
  • 架构armv7的重复符号

    尝试在我现有的应用程序中使用 Layar SDK 时出现以下错误 我该如何解决这个问题 Ld Users pnawale Library Developer Xcode DerivedData hub afxxzaqisdfliwbzxbi
  • 超类与类SpecificationPolicy不匹配

    我得到了一个superclass mismatch for class SpecificationPolicy尝试安装或升级某些brew 软件包时出错 例如 更新安装 supabase CLI 时 brew install supabase
  • 在现有 iOS 应用程序中集成 React-native(0.40.0) 后找不到 Yoga/Yoga.h 头文件

    在我的 Swift iOS 应用程序中集成 React Native 后 我无法构建 yoga Yoga h file cannot be found 我已经浏览了文档 查看了react native github页面 检查了类似问题的SO
  • init 中的 Swift 通用约束

    我有通用的 我希望能够用特定的约束来初始化它 约束仅用于初始化 班里的其他人并不关心 这是一个简化的示例 struct Generic
  • 使用 UISearchBar 过滤数组

    我目前正在使用以下代码来过滤数组并将结果显示在我的 tableView 中 问题是 只有当搜索与确切的单词匹配时 才会返回结果 如何更改数组过滤器以在输入时搜索每个字符 let data Mango Grape Berry Orange A
  • 使用 Simulator 时 Xcode 10 中的屏幕截图尺寸错误

    我正在尝试使用 Xcode 10 模拟器为 iTunes 制作屏幕截图 但图像大小错误 我读过Debug gt Optimize Rendering for Window Scale会有帮助 但在 Xcode 中没有这样的选项 有人有这个问
  • 列表不符合 Encodable

    因此 我正在使用领域 并且两个模型之间有以下关系 A unit has many tests Unit model class Unit Object Decodable objc dynamic var id String let tes
  • 如何自动缩放mapView以显示叠加层

    我可以在 mapView 上绘制多边形 但是我需要找到多边形并手动缩放它 有没有办法自动执行此过程 例如调整中心多边形 我浏览过互联网并阅读了一些相关文章 其中大多数都是基于折线和点的 任何形式的帮助将不胜感激 因为我正在寻找解决方案一段时
  • iOS Storyboards 我应该使用它们吗? [复制]

    这个问题在这里已经有答案了 我是 iOS 开发新手 尚未创建应用程序 但我向我的朋友寻求建议 他在市场上拥有非常高评价的应用程序 他说不要使用故事板 尽管我很想听取他的建议 但它们似乎确实很有帮助 这是否会在将来给我的应用程序带来问题 我有
  • 在 iOS 11 中创建 Gif 图像颜色贴图

    最近 我在创建 Gif 时遇到了一个问题 如果它太大 颜色就会丢失 然而 感谢 SO 的帮助 有人能够帮助我找到解决方法并创建我自己的颜色图 上一个问题在这里 保存动画 Gif 时 iOS 颜色不正确 https stackoverflow
  • Swift 3 错误:[_SwiftValue pointSize] 无法识别的选择器发送到实例

    我刚刚将我们的项目迁移到 swift 3 发现由于一个问题导致大量崩溃 由于未捕获的异常 NSInvalidArgumentException 而终止应用程序 原因 SwiftValue pointSize 发送到实例的无法识别的选择器 该
  • NSDateFormatter 返回错误的日期 + Swift

    Code let dateString 2016 04 02 var formatter NSDateFormatter NSDateFormatter formatter timeZone NSTimeZone abbreviation
  • 如何使用正则表达式将字符串分成相同字符的组?

    我有一个这样的字符串 var string AAAAAAABBBCCCCCCDD 并喜欢将字符串分割成这种格式的数组 same characters gt same group 使用正则表达式 Array AAAAAAA BBB CCCCC
  • 迭代 NSOrderedSet

    我正在尝试迭代 NSOrderedSet 的实例 像这样的事情 func myFunc var orderedSet NSOrderedSet array 42 43 44 for n in orderedSet NSLog i n 但是
  • 下载Xcode? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我刚刚升级到 OS X Mavericks 我很高兴能够使用所有新的 Mavericks 技术 我只有
  • 如何使用 Swift 获取 YouTube 频道的所有播放列表?

    我的问题不是关于从一般频道检索视频 我只想获取该频道创建的所有 播放列表 并检索每个播放列表的缩略图 标题和视频数量 这是一个 YouTube 频道示例 正如您所看到的 有很多已创建的播放列表 截至目前 我只能获取某个频道最新上传的视频 在
  • 如何处理 Xcode“嵌入应用程序扩展”构建阶段

    通过添加新目标创建 共享扩展 时 Xcode 在应用程序目标设置的应用程序 构建阶段 选项卡中添加名为 嵌入应用程序扩展 的构建阶段 可以删除此阶段 但如果您尝试通过按左上角的 来添加它 您会发现可用选项中未列出 嵌入应用程序扩展 为什么会
  • 在 UIMenuItem 上设置accessibilityLabel

    我正在尝试设置accessibilityLabel of a UIMenuItem而且似乎没有效果 无论如何 VoiceOver 只是读取项目的标题 let foo UIMenuItem title foo action selector

随机推荐

  • Scala泛型类支持多参数功能

    假设我有以下 Foo 类 它使用元组技巧支持任意数量的函数 abstract class Foo T R def pull T gt R 我可以使用以下语法定义子类 implicit def function2Tofunction1 T1
  • 拨号 tcp:不匹配的本地地址类型 172.29.4.175

    我使用以下代码收到此错误 拨号 tcp 不匹配的本地地址类型 172 29 4 175 知道如何解决这个问题吗 除了网上找不到任何有用的东西http oocms org question 763660 dial with a specifi
  • 添加 FirebaseUI 库和支持库时清单合并失败

    我正在使用 google firebase 实施身份验证 我收到此错误 如果可能的话 请有人提出解决方案并附上解释 以便我能理解 错误 任务 app processDebugManifest 执行失败 清单合并失败 来自 com andro
  • 在 R 中按 colSums 划分列

    我正在尝试缩放矩阵中的值 以便每一列加起来为一 我努力了 m matrix c 1 9 nrow 3 ncol 3 byrow T 1 2 3 1 1 2 3 2 4 5 6 3 7 8 9 colSums m 12 15 18 m m c
  • Redshift UDF逻辑问题

    我正在尝试编写 redshift udf 来验证时间戳 但是 它总是返回 false 有人可以解释一下为什么吗 create or replace function f Is timestamp sql VARCHAR 20000 retu
  • 如何使用 Interop 与 C# 将 *.ppt、*.pptx 文件另存为 *.wmv?

    我尝试用下面的代码来做到这一点 using Microsoft Office Core using PowerPoint Microsoft Office Interop PowerPoint using System IO using M
  • 如何使用 Java SDK 获取 AWS Quicksight 仪表板的嵌入 URL

    我想我了解获取 AWS Quicksight 仪表板的嵌入 URL 所需的所有步骤 并且我已经能够通过 AWS CLI 获取有效的 URL 如AWS docs 但是 我似乎无法通过 AWS Java SDK 特别是 v2 让它工作 似乎任何
  • 如何让Android应用程序在屏幕休眠时在后台运行?

    我正在开发一个跟踪应用程序 它通过每 3 秒获取用户当前位置来跟踪用户 当屏幕打开时 我能够获取经纬度值 但当屏幕休眠时 我无法获取数据 CODE Override public void onLocationChanged Locatio
  • 在VS 2017、MVC中添加服务引用

    如何在 VS 2017 MVC 中添加服务引用 我尝试找到 添加服务引用 按钮 但它不在那里 只有 添加引用 和 添加连接的服务 我之前在 VS 2013 中添加了服务引用 这很容易 但现在我为我的学校项目更改为 VS 2017 我不知道如
  • 使用 Gson 或 Jackson 压平 JSON 字符串,将包含各个级别键值的键制作为 Map

    我有一个关于以下问题的增强问题使用 Gson 或 Jackson 将 JSON 字符串展平为 Map 我的场景包括重复的键 因此上述问题中的解决方案会导致一些重复的键被覆盖 所以我正在考虑通过将每个级别的密钥组合在一起来构造密钥 那么如何实
  • 如果主题更改,请更改 WP7 应用程序的背景

    如果用户更改主题 我需要更改应用程序的背景图像 Light to Dark 或在代码隐藏中反之亦然 我希望这些应该在页面已加载 event TimDams 向您指出了检测现在设置的主题的好方法之一 但我没有注意到有任何信息如何检测a cha
  • MobileFirst Starter - Bluemix 推送通知在生产模式下失败

    我正在构建一个可以通过 Bluemix 接收远程通知的 iOS 应用程序 我在 Xcode 中的应用程序包标识符与 Apple Portal 中的 AppId 相匹配 后者也与 APN 证书相匹配 xxx sandbox p12 和 xxx
  • 如何更改构建定义的 Scala 版本?

    我正在开发一个简单的 SBT 项目 其中包括用于对 Scala 并行集合进行基准测试的 InputTasks 当我遇到问题时 我已经定义了输入键并开始编写任务 由于我的基准要求斯卡拉 2 10 0 M5 我尝试在我的build sbt na
  • 返回匿名类型结果?

    使用下面的简单示例 使用 Linq to SQL 从多个表返回结果的最佳方法是什么 假设我有两张表 Dogs Name Age BreedId Breeds BreedId BreedName 我想把所有的狗都带回来BreedName 我应
  • EL中bean的动态选择

    有没有办法在运行时而不是设计时指定 EL 中使用的托管 bean 例如 actionListener myBean method 这样myBean根据调用代码的 JSF 页面 part 可以有不同的值 条件是使用的任何对象代替 myBean
  • 只在 ISR 中读取的变量是否为 易失性?

    Is volatile需要一个在主循环中读写但在 ISR 中只读的变量吗 编辑 在编写 main 时 ISR 被禁用 因此 该变量被有效地原子地使用 EDIT 非常相关 中断的易失性与内存屏障 volatile是一种不好的同步访问方式 这是
  • jQuery:将复选框的值添加到输入文本字段

    我正在尝试将任何选中的复选框的值添加到输入文本字段 这是我的小提琴 http jsfiddle net Lf6ky document ready function checkbox on click function if checkbox
  • 使用 f String 插入字符或符号@

    我有两个变量总共存储两个数字 我想组合这些数字并用逗号分隔它们 我读到我可以使用 variablename 插入加号或空格或零 但逗号不起作用 x 42 y 73 print f the number is x y 这是我奇怪的解决方案 我
  • Qt 库中控件的默认 HTML 样式

    这是一个关于 Qt 库的问题 而不是关于 Web 设计的问题 对于 QLabel 和其他控件 我可以设置 HTML 文本 例如 Some Text 问题是 默认的HTML样式是在哪里定义的 我如何找出 标签将使用什么字体 下一个问题 我可以
  • 接收有关 Reality Composer 动画结束的 Xcode 通知

    我有以下可以正确加载的 Reality Composer 项目 正如您所看到的 当动画完成时 它应该使用关键字 attackComplete 进行通知 我如何收到此通知 import RealityKit import ARKit clas