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

target-action - Objective-C

Восстановить пароль Регистрация
 
Fooly
 Аватар для Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
11.11.2012, 00:01     target-action #1
Опять не могу толком разобраться в следующей теме. Можете конкретным кодом пояснить взаимодействие Target-Action?
Допустим у нас есть кнопка и лэйба.
Если я создам метод
Objective-C
1
2
3
4
-(IBAction) Hello
{
label.text= @"Hello";
}
и подсоеденю данный метод в Интерфес Билдере к моей кнопке, то это будет называться взаимодействем таргет-экшн???
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
11.11.2012, 11:08     target-action #2
у UIButton есть метод:
Objective-C
1
- (void)addTarget:action:forControlEvents:
Он делает тоже самое что сделали и Вы, только через IB.
Fooly
 Аватар для Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
11.11.2012, 11:13  [ТС]     target-action #3
Цитата Сообщение от zulkis Посмотреть сообщение
у UIButton есть метод:
Objective-C
1
- (void)addTarget:action:forControlEvents:
Он делает тоже самое что сделали и Вы, только через IB.
Т.е я сделал не через таргет-экшн? Получается я засовываю кнопку в ИБ, но не соединяю с методом, а прописываю ручками метод, который написали вы. Т.е я должен написать
Objective-C
1
- (void)addTarget:button action:label.text=@"Hello" forControlEvents:label
Как правильно написать, подскажите плз =)
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
11.11.2012, 11:18     target-action #4
Нет, это Вы как раз такие сделали через IB, а этот метод делает тоже самое, только кодом.
насчет

Цитата Сообщение от Fooly Посмотреть сообщение
- (void)addTarget:button action:label.text=@"Hello" forControlEvents:label
Я даже не знаю что тут сказать. Здесь вообще всё неверно. Всё. Почитайте документацию, а лучше купите книжку.
У меня смутное подозрение, что Вы не понимаете такое понятие как "тип", это так?
Fooly
 Аватар для Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
11.11.2012, 11:31  [ТС]     target-action #5
Цитата Сообщение от zulkis Посмотреть сообщение
Нет, это Вы как раз такие сделали через IB, а этот метод делает тоже самое, только кодом.
насчет



Я даже не знаю что тут сказать. Здесь вообще всё неверно. Всё. Почитайте документацию, а лучше купите книжку.
У меня смутное подозрение, что Вы не понимаете такое понятие как "тип", это так?
Да я не понимаю, как именно прописывать, поэтому и написал ерунду =D В эпловской документации тоже так написано, но примеров нету. Напишите плз как надо, чтобы я хоть понял.
И ещё раз (я уже запутался): в моём первом посте я сделал через ИБ - это является взаимодействием таргет-экшн?
Ваш метод - это таргет-экшн только не надо соединять через ИБ метод и кнопку, а достаточно только саму кнопку пометить. Т.е прописав IBOutlet UIButton * button я соединяю с кнпкой в интерфейсе, а далее всё прописываю ручками?
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
11.11.2012, 12:17     target-action #6
Например:
Objective-C
1
[button addTarget:self action:@selector(onButtonTap:) forControlEvents:UIControlEventTouchUpInside];
Подсоединяете к тому объекту, который self(в вашем случае вероятнее всего наследник UIViewController), вызов метода "onButtonTap" по событию UIControlEventTouchUpInside(Отпускание нажатия в переделах фрэйма кнопки).
Вызываемый метод в данном случае будет реализовываться следующим образом:
Objective-C
1
2
- (void)onButtonTap:(UIButton*)sender {
}
Fooly
 Аватар для Fooly
21 / 17 / 1
Регистрация: 26.03.2012
Сообщений: 147
11.11.2012, 12:57  [ТС]     target-action #7
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
#import <UIKit/UIKit.h>
 
@interface ViewController : UIViewController
{
    UILabel *label;
    UIButton *button;
}
 
@property (nonatomic, retain) IBOutlet UILabel *label;
@property (nonatomic, retain) IBOutlet UIButton * button;
 
@end
далее я синтезировал в implementation и соединид в ИБ кнопку и лэйбу
ещё 2 метода создал, в мэйн я импортировал этот хедер файл, но почему-то не могу реализовать методы через
[button addtarget:self...] но при этом этой кнопки не видно, её надо в мэйне опять инициализировать, разве она не инициализировалась через ИБ?
Я так понимаю нужно таким образом UIButton*btn=[[UIButton buttonWithType:UIButtonTypeRoundedRect] initWithFrame:??? (как здесь кстати прописать?)]; и тогда не нужно в ИБ вытягивать кнопку, а она сама там появится.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2012, 13:12     target-action
Еще ссылки по теме:

C# Ошибка каскадных таблиц (Specify ON DELETE NO ACTION or ON UPDATE NO ACTION)
Delphi Target options
Bash Не работает target
E.target.tagName JavaScript
Псевдокласс :target HTML, CSS

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

Или воспользуйтесь поиском по форуму:
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
11.11.2012, 13:12     target-action #8
Я лишь одно могу сказать - читайте, разбирайтесь. Вы не понимаете основ, но пытаетесь что-то сделать. Так не выйдет. Если начать объяснять - это нужно кучу всего пересказать.
Yandex
Объявления
11.11.2012, 13:12     target-action
Ответ Создать тему
Опции темы

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