問題タブ [swift-dictionary]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
21 参照

arrays - カスタム オブジェクトのディクショナリ、List と ForEach を使用して SwiftUI ビューで並べ替えて表示するにはどうすればよいですか?

customObjectFirebaseのリアルタイムデータベースに保存するものがあります:

は、次のcustomObjectsように に格納さDictionaryUUIDますkey

Firebase 辞書のスクリーンショット

iOS アプリケーションの にデータをロードすることはできます[String: CustomObject] Dictionaryが、 を使用して を並べ替えて表示するcustomObjects方法List() ForEach(...) { がベスト プラクティスであるかどうかはわかりません。

私の現在の解決策は、がロードされたArrayときにビルドすることですDictionary

didSetデータベースが更新されるたびに使用Arrayして、で使用できるを再作成しlist()ます。

これは私のViewです:

a は順序付けされていないコレクションであり、 aで aDictionaryに基づいてソートしようとするのは不適切であることを認識しています。customObject.namelistDictionary

Appleのドキュメントによると

ディクショナリは、順序が定義されていないコレクション内の同じ型のキーと同じ型の値の間の関連付けを格納します。各値は、ディクショナリ内のその値の識別子として機能する一意のキーに関連付けられています。配列内の項目とは異なり、辞書内の項目には順序が指定されていません。識別子に基づいて値を検索する必要がある場合は、実際の辞書を使用して特定の単語の定義を検索するのと同じように、辞書を使用します。

からを使用didSetして作成することは、ベスト プラクティスと見なされますか?ArrayDictionarycustomObjects

sortinglisting customObjectsからのより良いアプローチはありDictionaryますか?

0 投票する
1 に答える
44 参照

swift - NSDictionary 引数のキーと値のデータ型を迅速に指定するにはどうすればよいですか?

Objective-Cでも使用できるswiftの関数を定義したいと思います。私は列挙型を持っています:

そして機能は次のとおりです。

この関数は、次のようなコンパイル エラーを表示します。

パラメーターの型を Objective-C で表すことができないため、メソッドを @objc とマークすることはできません

これは、objective-c が構造体であるため、swift 辞書を受け入れないことが原因である可能性があります。迅速な辞書の代わりに NSDictionary を使用することを考えています。しかし、NSDictionary を使って [BookType: UIImage] に引数のデータ型を指定するにはどうすればよいでしょうか? 関数を呼び出すときに NSDictionary<BookType: UIImage> を関数に渡したいです。