Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
 
Spelcrawler
531 / 501 / 113
Регистрация: 12.03.2014
Сообщений: 1,666
Завершенные тесты: 1
#1

Доступные всем статичные объекты - Программирование iOS

07.04.2015, 22:30. Просмотров 637. Ответов 2
Метки нет (Все метки)

Как в ios реализовать подобное? Например, в java выглядит так:
Java
1
2
3
4
5
6
7
public class SomeClass{
    public static final int SOME_PARAM_1 = 0;
    public static final int SOME_PARAM_2 = 1;
}
 
//И дальше в любом месте в программе:
    int myParam = SomeClass.SOME_PARAM_1;
Есть ли что-то такое в objective-c? Или может там другими способами такое решается?

Добавлено через 4 часа 35 минут
Может не понятно объяснил - для примера, как решается ситуация, когда нужно послать в метод один из заранее определенных значений, день недели, к примеру? Причем чтобы эти параметры были доступны по всей программе, в любом классе. То есть, скажем, есть класс Calendar и у него метод setDayOfWeek, который принимает один из дней недели, а если параметр не соответствует дню недели - выбрасывает исключение.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2015, 22:30
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Доступные всем статичные объекты (Программирование iOS):

Объекты доступные отовсюду?
Как создавать объекты доступ к которым можно получить из любой части программы?...

Переменные доступные всем классам
Необходимо создать переменную, которая будет хранить в себе какое-то значение и...

Переменные доступные всем классам
Необходимо создать переменную, которая будет хранить в себе какое-то значение и...

Статичные классы и синглтоны
начал учить java, есть несколько вопросов: 1. не получается объявить...

Добавить в Math некоторые статичные методы и константы
Добрый день. Нужно добавить в Mathf некоторые статичные методы и константы....

Можно ли в методах кнопки сослатся на не статичные поля панели?
Имеется 2 класса - кнопка и панель. В экземпляр панели добавляю экземпляр...

2
HellBoy4eG
7 / 7 / 1
Регистрация: 15.10.2013
Сообщений: 19
15.04.2015, 17:32 #2
Используй синглтон:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@interface TestClass : NSObject
 
@end
 
@implementation TestClass
@property (strong, nonatomic) NSDate* date;
 
// Singletone
+(id)sharedTestClass
{
    static TestClass *shared = nil;
    @synchronized(self)
    {
        if(shared == nil)
        {
            shared = [[TestClass alloc] init];
        }
    }
    return shared;
}
 
 
@end
вызываешь в другом классе без инициализации
Objective-C
1
2
3
4
5
6
//Getter
NSDate* yourDate = [TestClass sharedTestClass]. date
 
//Setter
NSDate* yourDate = [Nsdate date]
[TestClass sharedTestClass]. date =  yourDate
1
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
16.04.2015, 16:33 #3
Лучший ответ Сообщение было отмечено Spelcrawler как решение

Решение

HellBoy4eG, ну здравствуйте, без инициализации... у синглтона уже есть инициализация...
Spelcrawler, так как Objective-C это Си в первую очередь, рассмотрите вариант использования extern в .h файле
Например так:
Objective-C
1
2
3
4
// .m file
NSString* const MyExternVar = @"MyExternVar";
// .h file
extern NSString* const MyExternVar;
Но если хочется сделать конкретно в классе - можете воспользоваться статичными методами, они объявляются через +
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
@interface MyClass : NSObject
 
+ (NSString *)aClassMethod;
 
@end
 
@implementation MyClass : NSObject
 
+ (NSString *)aClassMethod {
    return @"TestString";
}
 
@end
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2015, 16:33
Привет! Вот еще темы с решениями:

Большие серые статичные курсоры - что это, расскажите?
Друзья, подскажите, что это за такие большие серые курсоры? (Смотрите на...

OpenCV CLR статичные и динамические библиотеки в Visual Studio
Доброго времени суток, проблема такая: собрал OpenCV со статичными...

Как сделать статичные страницы с разными структурами HTML?
Добрый день! Собственно сам вопрос: "Как сделать так, чтобы на другой статичной...

Зачем в MVVM Light в классе ViewModelLocator статичные свойства указывающие на ВьюМодели?
public class ViewModelLocator { private static MainViewModel...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru