2017-11-20 3 views
-1

とJSONオブジェクトをループIは、以下のコードからのデータを取得するためのAPIに要求する:SwiftyJSON

func loadTenantData() 
{ 
    let methods = Methods() 

    methods.getApiData(completion: { 

     print(methods.getJSON()) 
     for item in methods.getJSON()[0] 
     { 
      print(item) 
     } 

    }, fullUrl: BackupChecker().getAllTenants()) 
} 

プリント(methods.getJSON())ライン印刷:

[{"TenantID":1,"Tenant1":"RAC"},{"TenantID":2,"Tenant1":"VictorMillwell"},{"TenantID":3,"Tenant1":"Comfort"},{"TenantID":4,"Tenant1":"Greenlight"},{"TenantID":5,"Tenant1":"Kinetic"}] 

なんらかの理由でこれはJSONを返すmethods.getJSONを反復処理しませんが、なぜ誰に知っていますか?

+0

上記の印刷方法は反復の*外*ですか?達成したいこと、または取得したいJSONの価値を教えてください。 –

+2

私の2セント:SwiftyJSONを放棄し、Swift 4で導入されたDecodable/Encodable JSONプロトコルの学習を開始します。SwiftyJSONよりもジェネリックとエラー処理の方法を使い分けることができます。後で1年以上使用している人からそれを取り出し、それを常に保証する。 – murphguy

答えて

0

最初のインデックスにアクセスしているだけなので、それは繰り返されません。 .getJSON()の後に[0]を削除してください。

for item in methods.getJSON()[0] // <-- Remove [0] to loop through the rest 
{ 
    print(item) 
} 
関連する問題