0

整数から文字列へのマッピングを格納するテーブル (辞書の辞書) があります。タイプとサブタイプがあります。たとえば、タイプ 1 => 果物、サブタイプ 1 => リンゴなどです。

マッピングは私の設定インターフェイスで構成できますが、アプリケーションのリセットではかなり静的です。そのため、マッピングを確認するたびにプロパティ リストから読み取りたくありません。プログラムの起動時に一度だけ読み取り、ユーザーが設定を変更したときにのみ書き込みたいと思います。

実行時にこのテーブルをどこに保持する必要がありますか? 私は 2 つのアプローチを念頭に置いています。(1) テーブル全体を変数としてアプリケーション デリゲートに配置することです。この場合、文字列を取得する必要があるたびに objectForKey を 2 回使用する必要があります。(2)静的変数を持つクラスを作成し(まだ方法がわからない)、クラスメソッドを使用してマッピングを取得します(例: +(NSString) stringForType: subType:

これら 2 つのアプローチを評価するか、より良い解決策を提案していただけますか? どうもありがとう!

4

1 に答える 1

0

どこに置いてもかまいません。コピーを1つだけ保持している限り、チェックアウトする必要がある重要なことはvalueForKeyPath:です。plistに保存し、定期的にplistに保存すると、永続性という大きなメリットがあります。オブジェクトを使用して自動的に取得でき[NSUserDefaults standardUserDefaults];ます。

于 2011-05-25T05:19:47.287 に答える