2016-12-25 9 views
1

私は、キャプチャして指定されたフォトアルバムに保存するアプリケーションを開発しています。それぞれの写真に一意の識別子を割り当てたいと思います。たとえば、「pic2; 4」と入力します。私は写真を取りたいときに、それぞれの写真について特定の情報を表示したいので、これをしたいと思います。UIImageオブジェクトに識別子を追加するSwift

UIImageオブジェクトにメモなどを割り当てるにはどうすればよいですか?

+0

ドキュメントディレクトリに画像を保存しますか?あなたは彼らと何をしますか? –

+0

@AhmadF写真の作成アルバムに保存します。そして、私はそれらすべてを(私の作成したアルバムにあるすべての写真)取り出し、それらを表示します。私は自分の識別子でそれらを表示したい。 –

+2

多分、http://stackoverflow.com/a/32195744/2442804は役に立ちます – luk2302

答えて

2

私は特定の写真アルバムに写真をキャプチャして保存するアプリを開発しています。私はそれぞれの写真

に一意の識別子を割り当てたいあなたは割り当て写真にユニークな識別子にする必要はありません。ユーザーのPhotoライブラリに写真を保存した後、にはという固有の識別子がランタイムによって割り当てられます(localIdentifier)。だからあなたがする必要があるのは、その一意の識別子を取り出してどこかに格納することだけです。その後、いつでもこの識別子を使用して写真を取得することができます。また、一意の識別子によって一意に識別されるため、この写真と任意の二次情報を独自のデータモデルで関連付けることができます。

+0

ありがとうございます。しかし私は私の識別子(私の注釈)を割り当てたい。後でその識別子を読んでみたい。たとえば、各写真にラベルを割り当てたいとします。 –

+0

私があなたに話していることを聞く。独自の識別子で写真に関連付けられている、自分のstorage_に「ラベルを割り当てる」かその他のセカンダリ情報を割り当てることができます。 – matt

+0

*ユニークな識別子がそれを一意に識別するため*美しい詩! – vikingosegundo

-2

NSObject

import Foundation 
import ObjectiveC 

// Declare a global var to produce a unique address as the assoc object handle 
var AssociatedObjectHandle: UInt8 = 0 


extension NSObject { 
    var stringProperty:String { 
     get { 
      return objc_getAssociatedObject(self, &AssociatedObjectHandle) as? String ?? "" 
     } 
     set { 
      objc_setAssociatedObject(self, &AssociatedObjectHandle, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC) 
     } 
    } 
} 

Extensionは、任意のオブジェクト(あなたのケースでUIImageオブジェクト)のstringPropertyを設定し、以下のように作成します -

imageName.stringProperty = "pic24" 

は、以下のようにstringPropertyを取得: -

let stringTagOfImage = imageName.stringProperty 
+1

これは画像とどのようにして保持されますか? – Abizern

+0

ユーザがイメージを取得するとき、彼はこの 'stringProperty'を割り当てることができます。 'tag'プロパティのように動作します。 – pkc456

+0

なぜ画像と関連情報を持つ新しいタイプだけではないのですか? – Abizern

関連する問題