2011-12-08 3 views
0

イメージピッカーで選択したイメージをディスクに保存し、管理対象オブジェクトに関連付ける必要があります。
イメージパスを管理オブジェクト(imagePath属性はnsstring)に保存しますが、管理オブジェクトを削除するまでは常に使用可能である必要があるため、イメージの呼び出し方法はわかりません。イメージをディスクに保存して管理対象オブジェクトに関連付けるiphone

私は管理対象オブジェクトのIDを持つすべての画像を呼び出すように思ったが、私はそれが長すぎると、私は私の画像を保存しようとすると、それはまだ一時的だと信じて...
はどのようにして、各管理対象オブジェクトごとに画像を呼び出すことができますか?

ありがとうございました!

答えて

1

管理対象オブジェクトのIDを使用して、ファイル名の文字列になって、一意であることが保証されているので、実際に理想的です。名前の長さはファイルシステムにとってほとんど問題になりません。

+0

はい、でも、@ railwayparadeの答えに対するコメントを見ることはできますか?ありがとうございました! – matteodv

+0

保存する画像データの量によってまったく異なります。外部ストレージのバイナリデータ属性を使用するように設定すると、Core Dataは特定のサイズのしきい値を超えるとそのデータをファイルとして保存して追跡します。それ以外の場合は、データベース自体に格納されます。これはもちろん、保存するイメージの数に応じて、より大きなデータベースファイルにつながります。どちらの方法も有効だと私の意見では、これはあなたに最も受け入れられるパフォーマンスを与えるものです。 – gschandler

2

ディスクに格納する場合は、変換可能タイプを使用してコアデータに格納するだけではどうですか。

はあなたが好きなものを使用して管理対象オブジェクトIDを短縮することができます。

NSString *_id=[[self.objectID URIRepresentation] lastPathComponent]; 
+0

私は実際に変換可能なタイプを使用してコアデータに画像を保存していますが、非常に遅いです...私はバックグラウンドで行うことができるものが必要です。 objectIDのlastPathComponentは何を取得しますか? objectIDがまだ一時的な場合は動作しますか? – matteodv

+0

いいえ、それは一時的な場合は動作しません – railwayparade

+0

if/else構造体でこれをチェックしようとしましたが、永久的なようです...管理対象オブジェクトは一時的にいつですか? – matteodv

関連する問題