有没有办法在 swift 中连接 var 的名称?
Is there a way to concatenate the name of a var in swift?
var object1 = "C_active.scn"
var object86 = "Soap.scn"
var object41 = "image.scn"
var object9 = "NaCl.scn"
不同 .SCN 文件的名称
public func addBox(sceneView: ARSCNView) {
let imagePlaneScene = SCNScene(named: "art.scnassets/" + object1)
let imagePlaneNode = imagePlaneScene?.rootNode.childNode(withName: "object1", recursively: true)
imagePlaneNode?.position = positioner
我有一个代码 reader 给我一个数字,我必须从那个 Int 中放置一个特定的 .SCN 文件。我不想像下面那样添加 100 if 语句。是否有某种方法可以将字符串与 Int 连接起来并将其转换为 swift 中的 var? (每个对象后面的数字是我从我的代码中收到的数字reader)
if(coding == 1) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else if(coding == 2) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
}
类似
var("object" + coding) -> coding41 (Var)
你为什么不直接使用 字典 来存储你的文件名?
var object: [Int: String] = [1: "C_active.scn", 9: "NaCl.scn" ...]
当您需要特定的文件名时,只需使用附加到该字符串的数字键。
print(object[9]) //Prints "NaCl.scn"
var object1 = "C_active.scn"
var object86 = "Soap.scn"
var object41 = "image.scn"
var object9 = "NaCl.scn"
不同 .SCN 文件的名称
public func addBox(sceneView: ARSCNView) {
let imagePlaneScene = SCNScene(named: "art.scnassets/" + object1)
let imagePlaneNode = imagePlaneScene?.rootNode.childNode(withName: "object1", recursively: true)
imagePlaneNode?.position = positioner
我有一个代码 reader 给我一个数字,我必须从那个 Int 中放置一个特定的 .SCN 文件。我不想像下面那样添加 100 if 语句。是否有某种方法可以将字符串与 Int 连接起来并将其转换为 swift 中的 var? (每个对象后面的数字是我从我的代码中收到的数字reader)
if(coding == 1) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else if(coding == 2) {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
} else {
sceneView.scene.rootNode.addChildNode(imagePlaneNode!)
}
类似
var("object" + coding) -> coding41 (Var)
你为什么不直接使用 字典 来存储你的文件名?
var object: [Int: String] = [1: "C_active.scn", 9: "NaCl.scn" ...]
当您需要特定的文件名时,只需使用附加到该字符串的数字键。
print(object[9]) //Prints "NaCl.scn"