я объявил две переменные NSString и NSURL в интерфейсе моего контроллера
// project file url
NSURL * url_projectURL;
// temp string just for examine
NSString * tempString;
в действии моего приложения с именем:
- (IBAction) btnNewProject:(id)sender
// after running save panel and clicked Save
//
// set project url
url_projectURL = [savePanel URL];
// set temp string
tempString = [url_projectURL absoluteString];
//
NSLog(@"tempString is: %@", tempString);
NSLog(@"ProjectURL is: %@", [url_projectURL absoluteString]);
результат:
tempString is: file://localhost/Users/kosartofiq/Documents/project.ksf
ProjectURL is: file://localhost/Users/kosartofiq/Documents/project.ksf
но в другом действии, например:
- (IBAction) btn_test: (NSButton *) отправитель
NSLog(@"tempString is: %@", tempString);
NSLog(@"ProjectURL is: %@", [url_projectURL absoluteString]);
Результат:
для строковой переменной:
tempString is: file://localhost/Users/kosartofiq/Documents/project.ksf
но для переменной url - ноль или ошибка при показе коэффициента
У меня вопрос: почему переменная url меняет свое значение на ноль и теряет свое значение при использовании в других действиях, но строковая переменная сохраняет свое значение?
Я хочу использовать этот URL для сохранения изменений в файле, и в моем проекте я использую его некоторое время.