android - ARCore AnchorNode.setOnTapListener

标签 android kotlin augmented-reality arcore

我正在尝试将 onTapListener 添加到节点,但从未调用其中的代码。有人可以发现我正在做的错误吗?

private fun addNodeToScene(fragment: ArFragment, createAnchor: Anchor, renderable: ModelRenderable) {
    val anchorNode = AnchorNode(createAnchor)
    anchorNode.setOnTapListener{_,_ ->
        buttonasd.text = "asdasd" // this line is never called
    }

    val transformableNode = TransformableNode(fragment.transformationSystem)
    transformableNode.renderable = renderable
    transformableNode.setParent(anchorNode)
    fragment.arSceneView.scene.addChild(anchorNode)
    transformableNode.select()
}

最佳答案

要使其正常工作,您应该执行以下操作:

    private fun addNodeToScene(fragment: ArFragment, createAnchor: Anchor, renderable: ModelRenderable) {
    val anchorNode = AnchorNode(createAnchor)

    val transformableNode = TransformableNode(fragment.transformationSystem).apply {
        setOnTapListener { _, _ ->
            //TODO your action
            }

        }
        transformableNode.localPosition = Vector3(0f,0.3f,0f)
        transformableNode.renderable = renderable
        transformableNode.setParent(anchorNode)
        fragment.arSceneView.scene.addChild(anchorNode)
        transformableNode.select()
    }

关于android - ARCore AnchorNode.setOnTapListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55260254/

相关文章:

Android webview,文件输入字段文件选择器不显示

android - AsyncTask 返回 null

android - Room allowMainThreadQueries 与 Kotlin 协程

Kotlin 忽略 map 上的空键

Kotlin 使用 groupingBy 和聚合求和

Android 项目,更改 Firebase 帐户

java - processDebugManifest 错误 - Android Studio

swift - 为什么 "ARFaceTrackingConfiguration.isSupported"语句在AppDelegate中,而不是在ViewController中?

3d - 如何查看从Apple ARKit 2.0扫描3D对象应用程序导出的arobject扩展格式?

android - Google Sceneform – 是否已弃用?有替代品吗?