2017-09-25 7 views
0

私のコード- スウィフト

func shuffle() { 
    let footballClubsInPoland = GKRandomSource.sharedRandom().arrayByShufflingObjects(in: self.footballClubsInPoland) 
    option1.setTitle((footballClubsInPoland[0] as AnyObject).name, for: .normal) 
    option2.setTitle((footballClubsInPoland[1] as AnyObject).name, for: .normal) 
    print(footballClubsInPoland[0]) 
    print(footballClubsInPoland[1]) 
} 

だ私の問題は、私は、コンソールにシャッフルされたオブジェクトを、見ることができるということですが、私のボタンのタイトルがにロードされていませんシミュレータ。私は何をすべきか?

+1

'footballClubsInPoland'配列の種類は何ですか?このような –

+0

コードlokks:あなたはなぜ –

+0

のvar footballClubsInPoland:footballClubs = footballClubs(29名::: "ルフ・ホジューフ"、トロフィー)が[footballClubs] = [] と、典型的なオブジェクトがこの のvarルフ・ホジューフのように見えますAnyObjectにキャストしますか? –

答えて

0

行う場合(footballClubsInPoland[0] as AnyObjectあなたはANYOBJECTに要素をキャストしている、と.nameを呼び出すときには、実際にfootballClubsname性質に言及されていません。

だからではなく実行する必要があります。

func shuffle() { 
    let footballClubsInPoland = GKRandomSource.sharedRandom().arrayByShufflingObjects(in: self.footballClubsInPoland) as! [footballClubs] 
    option1.setTitle(footballClubsInPoland[0].name, for: .normal) 
    option2.setTitle(footballClubsInPoland[1].name, for: .normal) 
    print(footballClubsInPoland[0]) 
    print(footballClubsInPoland[1]) 
+1

Trevor - あなたのご忍耐のためにありがとうございます。すべて今働いています:) –

+0

@MaciejGiepardaよろしくお願い致します! :) –