にネストされた辞書を行う方法。スウィフトへの初心者は、私も単純なことで苦労していたよう:(私は辞書内の辞書を作成するために非常に多くの方法で試みたが、それは常に失敗しスウィフト
理由は、私は10項目の表を記入したいと思っています。各項目には、タイトル、URL、ページビュー、ユニークユーザーがあります。 IndexPath.rowを使用して、私はデータをJSON形式のコンテンツを持つAPIからの入力に基づいて、すべての第五秒を更新できるようにしたい
を私が遊び場にしようとしてしまった:。
var topArticleDetails:[String:AnyObject] = ["title":"","url":"","uniqueUsers":0,"events":0]
var topArticles:[Int:NSDictionary] = [0:topArticleDetails]
topArticleDetails["title"] = "Varden - Nyheter"
topArticleDetails["url"] = "http://www.varden.no/nyheter"
topArticleDetails["uniqueUsers"] = 50
topArticleDetails["events"] = 100
topArticles[1] = topArticleDetails
は、正常に動作するようですが、私は私のViewControllerにこれを追加したとき、私は、エラーインスタンスのメンバを取得しています「topArticleDetails」「のViewController」
閉じるが、無葉巻タイプに使用することはできません。..
どうすればこの問題を解決できますか?多分私が今試しているものより良い方法があります。現時点ではちょっと働いていますが、代わりに、ネストされた辞書を有していると私はこのような4つの別々の配列になってしまっている:
var topArticlesTitle = [String]()
var topArticlesURL = [String]()
var topArticlesEvents = [Int]()
var topArticlesUniqueUsers = [Int]()
と私はより良い方法がなければならないかなり確信しています。私の下に設けられソリューションに加えて
>> UPDATE < <
は別のものを見つけました。それはとても簡単ですが、私は恥ずかしいですが、それは同時にSwiftとOOPの両方を学ぶ部分だと思います。データを削除した場合、変数を宣言するときに変数に入力しようとしましたが、空のままにしておくと、魅力的に機能しました。代わりに、辞書内の辞書を使用しての
var topArticleDetails = [String:AnyObject]()
var topArticles = [Int:NSDictionary]()
これは、View Controllerでどのように使用しているかを確認すると役立ちます。 –
@CaseyFleserありがとうございますが、私はそれを理解する助けを得たように今は大丈夫だと思いますか? – espenlg