2016-12-12 19 views
1

私が単にやろうとしていることは、既存の[String:String]辞書のデータをテーブルビューに取り込むことです。配列でこれを行う方法については数多くの例とチュートリアルがありますが、辞書でそれを行う方法については何も見つかりませんでした。辞書の値がどのような順序でテーブルビューに入れられるかは、私には関係ありません。辞書からのデータでUITableViewを読み込む

私はセルにコンセントを持つ別のUITableViewCellクラスを持っています。この辞書をテーブルビューにリンクする方法を知るだけでいいです。すべての助けが大歓迎です、ありがとうございます。

+0

テーブルビューの行が順序付けられているため、配列が必要です。 – rmaddy

+0

私の場合、注文とテーブルビューとは完全に無関係ですが? –

+0

Array(dict.values)をtableviewデータソースとして使用できます。 – koropok

答えて

1

ディクショナリの内容が入った順序と同じ順序で出てくることを保証することはできないため、ディクショナリから直接行うことはできません。したがって、辞書キー(たとえば)に基づいた別の配列を使用して間接的に行う必要があります。これを行うための

このような方法の1つは、thusly辞書のソートされたキーに基づいて、アレイを作成するには、次のようになります。

sortedKeys = Array(dictionary.keys).sorted(<) 

その後、あなたのUITableViewのデリゲート/データ・ソースの方法はsortedKeysにインデックスとしてindexPath.rowを使用するには配列のキーを取得する配列。そのキーを使用して、辞書から値を取得します。

+0

それは、それがタブービューに入る順序を教えてくれないときでさえ本当ですか? –

+0

絶対に真です。順序はあなたにとって重要ではないかもしれませんが、テーブルビューが使用するために定義された順序がなければなりません。定義によって、テーブルビューはそのセルデータをインデックス(整数)で取得します。したがって、並べ替えられたリストで使用する必要があります。配列は、これに使用する論理データ構造です。 –

+0

この回答は完璧に機能しました。どうもありがとう! –

関連する問題