【问题标题】:How to UIView add into the SCNNode? Swift如何将 UIView 添加到 SCNNode 中?迅速
【发布时间】:2018-07-07 23:35:24
【问题描述】:

ARKit ios 相关问题。视图添加到 SCNNode。

我的要求是将两个标签的UIView添加到SCNNode和Show中。

//SCNNode 创建函数 func Val() -> SCNNode {

    //SCNNode Create using SCNode()
    let holderNode = SCNNode()

    // Set It's Geometry As An SCNPlane
    holderNode.geometry = SCNPlane()

    // Create A New Material
    let material = SCNMaterial()

    // Create A UIView As A Holder For Content
    let viewToAdd = UIView(frame: CGRect(x: 10, y: 20, width: 300, height: 30))
     //background Color
    viewToAdd.backgroundColor = .white

    // create red Label
    let redLabel = UILabel(frame: CGRect(x: 0, y: 10, width: 100, height: 10))
    redLabel.text = name
    redLabel.textColor = .red
    viewToAdd.addSubview(redLabel)

    // crate Blue Label
    let bluelabel = UILabel(frame: CGRect(x: 0, y: 20, width: 100, height: 20))
    bluelabel.text = String(distTwoPoints)
    bluelabel.textColor = .red
    viewToAdd.addSubview(bluelabel)

    material.diffuse.contents = viewToAdd
    holderNode.geometry?.firstMaterial = material


    holderNode.transform = CardinalDirection.transform(rotationY: GLKMathDegreesToRadians(angle), distance: 500)

    // return node
    return holderNode


}

【问题讨论】:

    标签: uiview add arkit scnnode


    【解决方案1】:

    使用以下代码将 UIView 添加到 SCNNode:

     let plane = SCNPlane()
     plane.firstMaterial!.diffuse.contents = viewToAdd
    
     holderNode.geometry = plane
    

    【讨论】:

    • 导致崩溃
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-29
    • 2017-12-09
    • 2019-09-06
    • 2019-08-11
    • 1970-01-01
    相关资源
    最近更新 更多