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

Objective-C

Войти
Регистрация
Восстановить пароль
 
Prorok2323
33 / 125 / 43
Регистрация: 04.12.2013
Сообщений: 548
#1

Референция в Objective-C - Objective-C

26.08.2014, 13:00. Просмотров 778. Ответов 9
Метки нет (Все метки)

Всем привет.

Многие, кто пишет на Java, знают, что там есть возможность передавать референцию на объекты между классами. Делегирование в общем. То есть что-то вроде:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Class Aaa {
 
   Bbb reference;
 
public Aaa (Bbb reference) {
  this.reference = reference;
}
 
Class Bbb {
 
   int a = 10;
 
}
 
public static void main (String[] args) {
    Bbb objectB = new Bbb();
    Aaa objectA = new Aaa(objectB);
    objectA.a = 14; //таким образом переменная "а" изменилась в объекте objectB
}
Вопрос: как реализовать подобное в Objective-C, если я например хочу в классе A изменить/получить/установить значение на слайдере, который объявлен в классе B? (iOS)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.08.2014, 13:00     Референция в Objective-C
Посмотрите здесь:

Перцептрон на objective c - Objective-C
Добрый день! Я пытаюсь реализовать перцептрон на обжектив-С. Но столкнулся с проблеммой, когда через какое-то число эпох выход сети уходит...

Objective-C и Яндекс.Карты - Objective-C
Доброго времени суток! Хочу попробовать написать приложение для iPhone, нужно чтобы на карте показывало местоположение пользователей и...

Objective C,MVC,Singlton - Objective-C
Здравствуйте, товарищи программисты. Хотелось бы задать вам несколько вопросов. Надеюсь получить на них ответы. Разбираюсь с Objective C...

Существует ли Objective-C на windows - Objective-C
Доброе время суток! Подскажите есть ли objective-c для windows?

Windows+objective-c=love? - Objective-C
Возможно такое? Потому что как язык он мне импонирует, но мака, естественно, у меня нет. Всякие хакОси ставить не хочу. Есть хоть какая-то...

Objective-C для новичков и чайников - Objective-C
други, поясните я новичок, знаю основы программирования, в теории знаю js и c++ заинтересовался Qt - но обломался поняв что надо...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
korvin_
1699 / 1237 / 186
Регистрация: 28.04.2012
Сообщений: 4,462
26.08.2014, 13:47     Референция в Objective-C #2
Цитата Сообщение от Prorok2323 Посмотреть сообщение
референцию
Это так хитро обозвал ссылку?

Цитата Сообщение от Prorok2323 Посмотреть сообщение
Java
1
2
Aaa objectA = new Aaa(objectB);
objectA.a = 14; //таким образом переменная "а" изменилась в объекте objectB
Нет, таким образом мы получили ошибку компиляции.

А так, примерно так:
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
24
25
26
@class Aaa : NSObject {
    Bbb *reference;
}
 
@interface
 
- (id)initWithBbb:(Bbb *)reference;
 
...
 
@implementation
 
- (id)initWithBbb:(Bbb *)reference {
    if (self = [super init]) {
        self.reference = reference;
        return self;
    } else
        return nil;
}
 
...
 
int main(int argc, char *argv[]) {
    Bbb *objectB = [[Bbb alloc] init];
    Aaa *objectA = [[Aaa alloc] initWithBbb:objectB];
}
Prorok2323
33 / 125 / 43
Регистрация: 04.12.2013
Сообщений: 548
26.08.2014, 16:52  [ТС]     Референция в Objective-C #3
korvin_, ваш код понятен, но, я напомню, что main отсутствует.

Добавлено через 2 минуты
Ой, пардон, имел ввиду
Java
1
2
3
4
5
public static void main (String[] args) {
    Bbb objectB = new Bbb();
    Aaa objectA = new Aaa(objectB);
    objectA.reference.a = 14;
}
korvin_
1699 / 1237 / 186
Регистрация: 28.04.2012
Сообщений: 4,462
26.08.2014, 18:35     Референция в Objective-C #4
Цитата Сообщение от Prorok2323 Посмотреть сообщение
я напомню, что main отсутствует.
Во-первых, не отсутствует, во-вторых, ну помести использование объектов туда, куда тебе надо.

Цитата Сообщение от Prorok2323 Посмотреть сообщение
Ой, пардон, имел ввиду
Objective-C
1
2
3
Bbb *objectB = [[Bbb alloc] init];
Aaa *objectA = [[Aaa alloc] initWithBbb:objectB];
objectA.reference.a = 14;
Добавлено через 2 минуты
А вообще обычно элементы интерфейса (слайдер в твоем случае) просто связывают в Xcode со свойством (@property) объекта, в котором располагается ссылка. В общем на ютубе легко найти видео с примером.

P.S. И делегирование тут вообще не при чем.
Prorok2323
33 / 125 / 43
Регистрация: 04.12.2013
Сообщений: 548
26.08.2014, 18:49  [ТС]     Референция в Objective-C #5
korvin_, привожу пример:
Слайдер расположен в главном меню и меняет размер шрифты текста где-то в какой-то UITableView странице. Как их связать?
dsdbonus
1 / 1 / 0
Регистрация: 25.08.2014
Сообщений: 10
26.08.2014, 19:20     Референция в Objective-C #6
@property создай, а так вообще зажимаешь ctrl, перетаскиваешь слайдер в код, создаешь обработчик, так же делаешь для второго элемента только ссылку на него создаешь (можно если идентификатор есть в сцене, то его по другому найти), и в обработчике присваиваешь размер шрифта.
Xavier
in god we trust
74 / 74 / 8
Регистрация: 20.04.2012
Сообщений: 201
26.08.2014, 21:27     Референция в Objective-C #7
Цитата Сообщение от Prorok2323 Посмотреть сообщение
Слайдер расположен в главном меню и меняет размер шрифты текста где-то в какой-то UITableView странице. Как их связать?
kvo тебе в помощь
glvrzzz
95 / 71 / 12
Регистрация: 12.12.2012
Сообщений: 214
27.08.2014, 07:54     Референция в Objective-C #8
Цитата Сообщение от Prorok2323 Посмотреть сообщение
Слайдер расположен в главном меню и меняет размер шрифты текста где-то в какой-то UITableView странице. Как их связать?
MVC наше все. Что ваш слайдер, что TableView - это V. Напрямую они взаимодействовать не должны друг с другом. Размер шрифта в вашем случаем - это настройка, т.е. модель. "страницей" у вас должен управлять контроллер. То есть один контроллер должен прочитать значение со слайдера и положить его в модель, другой контроллер - прочитать из модели и сказать TableView: "выставь вот такой шрифт".
Prorok2323
33 / 125 / 43
Регистрация: 04.12.2013
Сообщений: 548
27.08.2014, 19:16  [ТС]     Референция в Objective-C #9
glvrzzz, есть примеры?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.08.2014, 19:23     Референция в Objective-C
Еще ссылки по теме:

Разработка на Objective C без Mac OS X - Objective-C
Скажите, возможна ли разработка на Objective C под Mac OS X и iPhone в операционной системе Linux или Windows? В данный момент хочу...

Программное обеспечение для Objective-C - Objective-C
Скажите,какая программа используется для написания кода на Objective-C.

Нужен совет по изучению objective-c - Objective-C
здравствуйте, хочу изучить objective для разработки мобильных приложений. я самоучка, сказали сначала с си начни.......изучил на среднем...

Не могу разобраться с категориями в Objective C - Objective-C
Задание: Заменить alloc init autorelease на NSOBject категорию с методом object На данный момент вот такая реализация, но она не...


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

Или воспользуйтесь поиском по форуму:
Prorok2323
33 / 125 / 43
Регистрация: 04.12.2013
Сообщений: 548
27.08.2014, 19:23  [ТС]     Референция в Objective-C #10
Вот что мне нужно.
Но такое соединение невозможно. Как это реализовать в коде?
Миниатюры
Референция в Objective-C  
Yandex
Объявления
27.08.2014, 19:23     Референция в Objective-C
Ответ Создать тему
Опции темы

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