Форум программистов, компьютерный форум CyberForum.ru

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Light19
0 / 0 / 0
Регистрация: 28.10.2011
Сообщений: 16
#1

Общие ресурсы - Objective-C

03.11.2011, 14:59. Просмотров 1368. Ответов 4
Метки нет (Все метки)

Подскажите новичку... вот я создал в одном классе игры переменную, содержащую текстуры к игре. Как иметь доступ к этой переменной из другого класса?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2011, 14:59     Общие ресурсы
Посмотрите здесь:

Как подключать ресурсы к проекту? - Objective-C
Подскажите или тыкните носом где можно прочесть, как подключать ресурсы к проекту Cocoa framework и потом их подключать. В MSVS это...

Общие сетевые ресурсы между windows 7, 8.1 и XP - Windows
после установки 8.1 64 на комп пропадают шары на вин 7 а ХП теряет доступ к рабочей группе до установки всё работало без глюков после...

Один из компьютеров не пингуется, но общие ресурсы доступны - Сетевое оборудование
Ситуация такая: Имеется одноранговая сеть из 15 компов, 14 из которых подключены через прокси к Интернету. Сообщают, что на одном из...

Не видны общие ресурсы на одном из компьютеров домена - Windows Server
Приветствую всех. Имеется комп в Windows Server 2012 и парк техники (около 20 машин) на разных версиях ОС - Windows XP и Windows 7 (больше...

Общие ресурсы для локальных пользователей одной машины под Windows XP - Windows XP
Подскажите пожалуйста!!!:senor: как настроить Общие ресурсы для локальных пользователей одной машины под Windows XP. Проблема следующая:...

Как рассчитать средние общие издержки, общие издержки, доход, прибыл предприятия? - Экономика
Фирма производит 10 единиц продукции. Средние постоянные издержки равны 25 у. е., средние переменные – 35 у. е. Цена единицы продукции – 70...

Рассчитать общие, предельные, средние постоянные, средние переменные и средние общие затраты предприятия - Экономика
Задание 6. Рассчитать общие, предельные, средние постоянные, средние переменные и средние общие затраты предприятия, если известно, что...

Общие вопросы. - C++
Доброго времени суток! После изучения Паскаля, решил перейти на изучение С/С++, прочитал много мануалов для новичков, но накопились...

Общие папки - Администрирование Windows
В чем трабл? С машины под W98 не могу получить доступ к общим папкам на машине под W2000Pro. Хочет какой-то пароль. Папки общими...

Общие папки - Сети
Помогите разобраться. В локальной сети имеется общая папка (ОП). В этой ОП есть ещё две - в 1 все имеют полный доступ, а в 2 все могут...

Общие записи - LINQ
Есть такая структура: Нагрузка(преподавателя) у нее поля Учитель и Група. В одном ListBox выбраны групы, в другом --учителя надо получить...

2 ОС : общие программы - Windows 7
На компе 2 ОС : Windows XP и Windows 7. Можно ли использовать в "7" программы от xp,которые идут? Например aimp, total cmd, everest и т.п...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
03.11.2011, 15:08     Общие ресурсы #2
1 объявить в другом классе такую же переменную, и в нее передать адрес первой переменной.
2 передать во второй класс указатель на первый класс и пользоваться всеми его ресурсами
3 сделать в проекте синглетон, в котором хранить данные которыми должны пользоваться другие классы и оперировать этими данными
Light19
0 / 0 / 0
Регистрация: 28.10.2011
Сообщений: 16
03.11.2011, 16:38  [ТС]     Общие ресурсы #3
А вы могли бы пример кода написать? Искал в книгах по Objective c, но там только простые вещи. Про все это я там по крайней мере не нашел.

Допустим у меня класс Resources, в котором я инициализирую в самом начале переменную texture, к которой должен быть общий доступ.

И допустим у меня есть класс Playground, который должен иметь доступ к texture из класса Resources. Можно пример кода для всех трех пунктов?
Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
04.11.2011, 03:05     Общие ресурсы #4
это не 3 пункта, это 3 разных варианта как получить из одного класса доступ к ресурсам другого класса.

1 объявить в другом классе такую же переменную, и в нее передать адрес первой переменной.
допустим в первом классе у нас есть переменная
Objective-C
1
NSString *string;
во втором классе объявляем переменную
Objective-C
1
NSString *sharedString;
описываем ее проперти
Objective-C
1
@property(nonatomic, retain) NSString *sharedString;
и в м файле не забываем синтезировать геттер и сеттер
Objective-C
1
@synthesize sharedString;
Теперь когда в объекте первого класса создаем обект второго класса, что-то типа
Objective-C
1
Class2 *class2 = [[Class2 alloc] init];
передаем в него нашу переменную
Objective-C
1
class2.sharedString = string;
2 передать во второй класс указатель на первый класс и пользоваться всеми его ресурсами

все аналогично первому варианту но передаем во второй класс указатель на первый тогда нам доступны вообще все его ресурсы

во втором классе описываем переменную в которой будем хранить адрес первого

Objective-C
1
2
3
id delegate;
 
@property(nonatomic, retain) id delegate;
и в м как и раньше
Objective-C
1
@synthesize delegate;
после инита второго класса передаем в него адрес первого

Objective-C
1
2
Class2 *class2 = [[Class2 alloc] init];
class2.delegate = self;
теперь можем пользоваться перемегнной string из второго класса как например
Objective-C
1
NSLog(@"string value: @%", delegate.string);
3 сделать в проекте синглетон, в котором хранить данные которыми должны пользоваться другие классы и оперировать этими данными

синглетон - это просто паттерн, долго рассказывать просто почитайте здесь
там, описание и примеры реализаций на куче языков, в тч и на objective-c. В кратце синглетон - это такой класс который может в приложении существовать только в единичном экземпляре, и где-бы Вы его не объявили он возвращает указатель на уже созданный ранее объект, и Вы получаете из любого класса приложения доступ к ресурсам этого объекта...
Light19
0 / 0 / 0
Регистрация: 28.10.2011
Сообщений: 16
04.11.2011, 22:30  [ТС]     Общие ресурсы #5
Спасибо!!
Yandex
Объявления
04.11.2011, 22:30     Общие ресурсы
Ответ Создать тему
Опции темы

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