Уникальный идентификатор для каждого экземпляра - PullRequest
2 голосов
/ 20 октября 2011

В настоящее время я пытаюсь легко сохранить состояние UIViewController.Однако вполне возможно, что контроллеры одного класса должны сохранять свои данные в одном и том же каталоге.

Поэтому я ищу способ получить уникальные идентификаторы для экземпляра, чтобы безопасно записать данные на диск.

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 20 октября 2011

Ответ на этот вопрос: не существует простого способа сделать это.Потому что это не то, что ты должен делать.Экземпляры объектов не являются моделью данных.Связи между объектами не сохраняются между прогонами.Однако можно создавать идентификаторы для data , и объекты могут отслеживать эти идентификаторы и соответствующие связи между данными.

Например, вы можете создавать связи между объектами в вашей модели данных, назначаяUUID, когда вы создаете экземпляр, а затем сохраняете его на диск при выходе ... загружаете его с диска при запуске.

Я бы посмотрел на NSCoding и Core Data ... они обаразработан, чтобы позволить вам сохранить ваши данные при выходе из приложения.

Возможно, обновите / задайте новый вопрос, уточнив, чего вы пытаетесь достичь с помощью этого.

1 голос
/ 20 октября 2011

Я не уверен на 100%, что правильно прочитал ваш вопрос, но я прочитал его дважды.

Вам это нужно?

MyClass.h

@interface MyClass : NSObject
{
    int myID;
}
@end

MyClass.m

//this is where the magic is. Keeps a static identifier which starts at zero each time you start the app and increments each time you init this class.
static int identifier = 0;

@implementation MyClass

-(id) init
    ...

    identifier ++;
    myID = identifier;
    ...
}
....
@end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...