Arrays 如何使用字符串数组作为参数调用函数?

Arrays 如何使用字符串数组作为参数调用函数?,arrays,swift,function,sprite-kit,Arrays,Swift,Function,Sprite Kit,我有一个字符串数组,我正试图在函数中使用它 var PostionRotation:Array = ["100,45,0.4","305,45,-0.2","505,45,0.3","705,45,-0.1","905,45,0.2"] func loadSprite(ArrayOfPositions:[String],NameOfSprite:String,SpriteTextureName:String) { // pass in a array for the positions

我有一个字符串数组,我正试图在函数中使用它

var PostionRotation:Array = ["100,45,0.4","305,45,-0.2","505,45,0.3","705,45,-0.1","905,45,0.2"]

func loadSprite(ArrayOfPositions:[String],NameOfSprite:String,SpriteTextureName:String)
{
    // pass in a array for the positions and rotations of the sprites
    // string for spritename
    // string for spritetexturename
    for Position in 0...ArrayOfPositions.count
    {
    var tempstring = ArrayOfPositions[Position ]as String//takes a string ie: 143,628,0.6
    var tempStringarray : [String] = tempstring.componentsSeparatedByString(",") // adds each item seperated by , to an array
    let XPos = CGFloat((tempStringarray[0] as NSString).floatValue)// exstracts the x cord
    let YPos = CGFloat((tempStringarray[1] as NSString).floatValue)//exstracts the y cord
    let Rot = CGFloat((tempStringarray[1] as NSString).floatValue)//exstracts the zrotation
    let SpriteName =  SKSpriteNode(imageNamed: SpriteTextureName) // add variable with texture
        SpriteName.name = NameOfSprite + String(Position + 1)// gives it a name + number ted1 etc
        SpriteName.position = CGPoint( x: XPos, y: YPos)// gets position from array
        SpriteName.zPosition = 2
        SpriteName.size = CGSize(width: 200, height: 100)
        addChild(SpriteName)
    }
}
如何调用该函数

我试过:

 loadSprite(PostionRotation, NameOfSprite: "frog", SpriteTextureName: "frog001")

 loadSprite(PostionRotation[String], NameOfSprite: "frog", SpriteTextureName: "frog001")
您是否尝试过:

loadSprite(PostionRotation, NameOfSprite: "frog", SpriteTextureName: "frog001")
下面是一个示例,它使用字符串数组作为参数调用全局函数:

import UIKit

func testFunc(posList:[String]) -> String
{
    var s = ""

    for pos in posList
    {
        s = s + " --- " + pos
    }

    return s
}

var PostionRotation:Array = ["100,45,0.4","305,45,-0.2","505,45,0.3","705,45,-0.1","905,45,0.2"]


var result = "result: " + testFunc(PostionRotation)

把它复制到操场上玩:-)

应该是我的错

var PostionRotation = ["100,45,0.4","305,45,-0.2","505,45,0.3","705,45,-0.1","905,45,0.2"]
那么这就行了

    loadSprite(PostionRotation, NameOfSprite: "frog", SpriteTextureName: "frog001")

嗨,Nicolas抱歉,这就是我想说的,我已经编辑好了,用第一个例子来表示感谢你的回复,你做得对。