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

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.92
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
#1

Создать кнопку на другом View программно - Objective-C

27.11.2013, 21:58. Просмотров 1778. Ответов 13
Метки нет (Все метки)

Есть 2 View. При нажатии пользователем кнопки на первой вьюшке, нужно, чтобы создавался объект на второй. Как можно сделать? Сразу прошу прощения за тупой вопрос.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
28.11.2013, 07:49     Создать кнопку на другом View программно #2
Objective-C
1
2
3
4
5
- (void)onSomeButtonOnFirstViewTap:(UIButton*)sender {
    UIView *view2 = <#указатель на вторую UIView#>;
    UIView *newView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    [view2 addSubview:newView];
}
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
28.11.2013, 20:27  [ТС]     Создать кнопку на другом View программно #3
Цитата Сообщение от zulkis Посмотреть сообщение
Objective-C
1
2
3
4
5
- (void)onSomeButtonOnFirstViewTap:(UIButton*)sender {
    UIView *view2 = <#указатель на вторую UIView#>;
    UIView *newView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    [view2 addSubview:newView];
}
Прошу прощения, наверное не правильно высказался. Есть 2 view controller`а. Нажимаю на копку - на другом контроллере создается объект.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
29.11.2013, 07:16     Создать кнопку на другом View программно #4
Objective-C
1
2
3
4
- (void)onSomeButtonOnViewOfFirstViewControllerTap:(UIButton*)sender {
    UIViewController *viewController2 = <#указатель на второй UIViewController#>;
    [viewController2 createSomeNewObject];
}
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
01.12.2013, 15:38  [ТС]     Создать кнопку на другом View программно #5
Цитата Сообщение от zulkis Посмотреть сообщение
Objective-C
1
2
3
4
- (void)onSomeButtonOnViewOfFirstViewControllerTap:(UIButton*)sender {
    UIViewController *viewController2 = <#указатель на второй UIViewController#>;
    [viewController2 createSomeNewObject];
}
Простите, а можно поподробнее? Не совсем получается осуществить в жизнь, а информации в гугле на эту тему никак найти не могу(
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
01.12.2013, 21:25     Создать кнопку на другом View программно #6
А что именно подробнее то?
Исходя из вашего вопроса - вы не имеете представления даже об основах языка.

Я написал конкретное решение.
Хотите знать больше - задайте вопрос, вам ответят
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
02.12.2013, 00:08  [ТС]     Создать кнопку на другом View программно #7
Мне не совсем понятно, что происходит в строке 3. Как я понимаю, то createSomeNewObject - это метод, который будет создавать нужный мне объект? Если так, то где его объявлять?
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
02.12.2013, 09:01     Создать кнопку на другом View программно #8
Объявляйте его в интерфейсе класса, который у нас в обсуждении идет как viewController2.
Например:
Objective-C
1
2
3
4
5
@interface SecondViewController : UIViewController
 
- (void)createSomeNewObject;
 
@end
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
02.12.2013, 21:43  [ТС]     Создать кнопку на другом View программно #9
А что если я работаю через Storyboard? Наверное следовало сразу об этом сказать...
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
02.12.2013, 22:06     Создать кнопку на другом View программно #10
А разницы нет. Если вы хотите вызвать свой метод(послать сообщение объекту в objective-c) у экземпляра какого-либо класса, вам нужно отнаследоваться и реализовать этот метод.
А в storyboard указать этот ваш класс.
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
02.12.2013, 22:33  [ТС]     Создать кнопку на другом View программно #11
Объявил, но выдает ошибку "No visible @interface for 'UIViewController' declares the selector 'createSomeNewObject'". Почему он ищет в UIViewController, а не в SecondViewController?
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
02.12.2013, 22:37     Создать кнопку на другом View программно #12
Вероятно потому, что указатель типа UIViewController?
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
02.12.2013, 22:51  [ТС]     Создать кнопку на другом View программно #13
О господи. Спасибо тебе огромное! Наконец-то получилось, прошу прощения за идиотские вопросы))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2013, 17:57     Создать кнопку на другом View программно
Еще ссылки по теме:
Objective-C Жесты + View Controller
Заполнение Table View из интернета Objective-C
push notification переход на нужный view controller Objective-C
Objective-C Всплытие события в родительское view, возможно ли реализовать
Как нажать программно кнопку в другом приложении C#

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

Или воспользуйтесь поиском по форуму:
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
09.12.2013, 17:57  [ТС]     Создать кнопку на другом View программно #14
Слушай, а что если возникает необходимость в таком создании объектов:

Objective-C
1
2
3
4
5
for(int i=0; i<=[array count]; i++) {
 
UISwitch *array[1] = [[UILabel alloc] initWithFrame:frame];
 
}
Возможно ли такое?
Yandex
Объявления
09.12.2013, 17:57     Создать кнопку на другом View программно
Ответ Создать тему
Опции темы

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