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

Objective-C

Войти
Регистрация
Восстановить пароль
 
zigen
0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 24
#1

Синтезация, айбиэкшны - Objective-C

28.09.2012, 12:09. Просмотров 682. Ответов 5
Метки нет (Все метки)

Добрый день.

1.
В чем разница между созданием метода доступа в хейдере и синтезацией его в *m и созданием и синтезацией в *m, и для чего при синтезации делается подобная вещь. И тоже с методами, бывает что их не определяют в хейдере,а в *m делают имплементацию.
Objective-C
1
 @synthesize operandStack = _operandStack;
2. Хочу написать калькулятор для ios, нашел уйму пример на гитхабе - непонятно - как сделать один IBaction для всех кнопок с сразу в Interface Buildr'e? чтобы не плодить их уйму, а кнопку различать по titleName.
3. Поясните пожалуйста код ниже. Выдрал два метода из примера калькулятора для ios
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
- (void) pushOperand:(double)operand
{
    NSNumber *operandObject = [NSNumber numberWithDouble:operand];
    [self.operandStack addObject:operandObject];
}
 
- (double)popOperand
{
    NSNumber *operandObject = [self.operandStack lastObject];
    if (operandObject) [self.operandStack removeLastObject];
    return [operandObject doubleValue];
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
28.09.2012, 15:10 #2
Цитата Сообщение от zigen Посмотреть сообщение
различать по titleName.
1. Для этого есть tag.

Не по теме:

Какой к черту titleName!?



2. Так и делаете.
3. Один метод, он принимает (UIButton*)sender (где sender ваша кнопка), дальше вы проверяете на tag - что за кнопка то нажата была. А дальше уже логика пошла.
Насчет того, что вы выдрали 2 функции из контекста и просите их объяснить.
Объясняю:
Происходит магия, в одном методе NSNumber <кудато> добавляется, в другом <откудато> убирается последний объект(NSNumber).
Вуаля - СТЕК
1
zigen
0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 24
28.09.2012, 15:47  [ТС] #3
Цитата Сообщение от zulkis Посмотреть сообщение
Не по теме:
Какой к черту titleName!?
Я хотел сказать currentTitle

типа вот этого NSString *digit = [ sender currentTitle ];

И еще я так и не понял "В чем разница между созданием метода доступа в хейдере и синтезацией его в *m и созданием и синтезацией в *m"
0
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
28.09.2012, 16:06 #4
В общем так:
разница в области видимости.
0
zigen
0 / 0 / 0
Регистрация: 29.06.2010
Сообщений: 24
28.09.2012, 16:10  [ТС] #5
Цитата Сообщение от zulkis Посмотреть сообщение
А что такое currentTitle?
Не по теме:
Какой к черту currentTitle!? Пользуйте tag property.
А хз)

В общем спасибо за наводку)
0
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
28.09.2012, 16:12 #6
Цитата Сообщение от zigen Посмотреть сообщение
А хз)

В общем спасибо за наводку)
а currentTitle - это свойство, геттер которого вернет вам текст у кнопки для текущего состояния.
Пользуйте то, что знаете как работает и для чего нужно.
1
Yandex
Объявления
28.09.2012, 16:12
Ответ Создать тему
Опции темы

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