2009-03-11 10 views
0

NSMutableArray内でABRecordRefを使用しようとしていますが、動作しないようです。私はABRecordがCクラスだと知っていますが、私はABRecordRefがObjective-Cクラスの仕事であり、NSObjectsでそれを使用できると思っていました。私はこの仕事をするために何をする必要がありますか?互換性のないポインタ型:NSObjectの派生コレクションオブジェクト内でCFType派生オブジェクトを使用するにはどうすればよいですか?

答えて

2

「作業していない」とはどういう意味ですか? inと同様に、コンパイルエラーや実行時エラーが発生しますか?

他のポスターへの返答でも指摘したように、Objective-C APIをiPhone上で使用することはできません(実際のABrecordクラスはありません)。

一般的には、興味のある要素をコピーし、コピーした値を辞書のようなものに保存することは、iPhoneのアドレス帳のもので本当に良いアイデアです。すべての要素を保存する必要がある場合は、AddressBook.hヘッダーファイルで定義されているすべての値を読み取るコードを持つ必要があります。一般的にレコードを歩くAPIの方法はありません。

あなたのアプリを終了して戻ってくるといつでもアドレス帳が変わる可能性があることを覚えておいてください。値を保存している場合は、アプリを再起動した後に変更することに注意してください。

+0

コンパイルの警告とランタイムエラーが発生します。 どの辞書がありますか? NSDictionary? – chaostheory

+0

うん、NSDictionary - 私はそれを使うので、キー "@name"の下に名前を保存することができます。電話番号や電子メールアドレスのようなものについては、個々の値を保持するために辞書に "@email"と@ "label"キーを保持した辞書を配列として保存します。 –

+0

ヒントのおかげで、私は構造体にブリッジがあると思ったが、クラスはない。 AppleがCore Foundationと同じコードをiPhoneに採用していた可能性もあります。 –

関連する問題