2017-03-08 7 views
-2

私が作成したオブジェクトのarrrayを作成したいと思います。私はオブジェクトの例と例を取り上げます。しかし、私が試してみるたびに、私は "期待される宣言"というエラーを受け取ります。配列が不明であるというエラーも出ていました。これは、配列のどこかでクラスについて言及する必要があるためですか?上記 オブジェクトの配列 - Swift

class ShapeColour : NSObject { 
    var colour:String 
    var shape:String 
    var image:UIImage 

    init(color: String, shape: String, image: UIImage) { 
     self.colour = color 
     self.shape = shape 
     self.image = image 
    } 

} 

がクラスで、以下ベローは、アレイ

mainShapeDict = [blueSquareObject,blueCircleObject,blueTriangleObject,redSquareObject,redCircleObject,redTriangleObject,yellowSquareObject,yellowCircleObject,yellowTriangleObject] 

おかげでexmaple

let redTriangleObject = ShapeColour(color: "red", shape: "triangle", image: UIImage(named: "redTriangle.png")!) 

です!

+2

'mainShapeDict'は辞書ではありません。配列です。 – Alexander

答えて

2

は、あなただけ言う必要がletmainShapeDict前:

あなたは、私は推測している他のコードでmainShapeDictを宣言していないので、それは「期待宣言」は、言う理由です

let mainShapeDict = [blueSquareObject, blueCircleObject, blueTriangleObject, redSquareObject, redCircleObject, redTriangleObject, yellowSquareObject, yellowCircleObject, yellowTriangleObject]

1

この

var mainShapeDict : [ShapeColour] = [ShapeColour]() 

は、あなたがMethodeのに.append使用して "ShapeColour" オブジェクトを追加することができますようにあなたが 最初の配列を宣言する必要があります

let redTriangleObject : ShapeColour = ShapeColour(color: "red", shape: "triangle", image: UIImage(named: "redTriangle.png")!) 
mainShapeDict.append(redTriangleObject) 

注:mainShapeDictは、配列ではなく辞書です

関連する問題