Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
#1

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

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

Есть 2 View. При нажатии пользователем кнопки на первой вьюшке, нужно, чтобы создавался объект на второй. Как можно сделать? Сразу прошу прощения за тупой вопрос.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 21:58
Ответы с готовыми решениями:

Изменение имени кнопки при нажатии на другую кнопку (в другом view)
есть 2 view контроллера. на первом view контролере есть ButtonGo и ButtonName....

При первом запуске программно переключиться на второй view controller (его не видно)
Добрый день. Есть 2 view controller'а. Во втором текстовое поле. Если оно не...

Как создать переход на Split View Controller (Storyboard)
Уважаемые форумчане! Я пишу программу для iPad, где необходимо совершить...

По нажатию кнопки на View Controllere открыть Table View Controller
Как по нажатию кнопки на View Controllere открыть Table View Controller

Вместо navigation bar с table view хочу сделать просто view controller
добрый вечер. В xcode есть стандартный темплейт с navigation controller, ...

13
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
28.11.2013, 07:49 #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];
}
0
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
28.11.2013, 20:27  [ТС] #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`а. Нажимаю на копку - на другом контроллере создается объект.
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
29.11.2013, 07:16 #4
Objective-C
1
2
3
4
- (void)onSomeButtonOnViewOfFirstViewControllerTap:(UIButton*)sender {
    UIViewController *viewController2 = <#указатель на второй UIViewController#>;
    [viewController2 createSomeNewObject];
}
1
kvakvit
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 37
01.12.2013, 15:38  [ТС] #5
Цитата Сообщение от zulkis Посмотреть сообщение
Objective-C
1
2
3
4
- (void)onSomeButtonOnViewOfFirstViewControllerTap:(UIButton*)sender {
    UIViewController *viewController2 = <#указатель на второй UIViewController#>;
    [viewController2 createSomeNewObject];
}
Простите, а можно поподробнее? Не совсем получается осуществить в жизнь, а информации в гугле на эту тему никак найти не могу(
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
01.12.2013, 21:25 #6
А что именно подробнее то?
Исходя из вашего вопроса - вы не имеете представления даже об основах языка.

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

Objective-C
1
2
3
4
5
for(int i=0; i<=[array count]; i++) {
 
UISwitch *array[1] = [[UILabel alloc] initWithFrame:frame];
 
}
Возможно ли такое?
0
09.12.2013, 17:57
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2013, 17:57

Создать NSCollectionView программно
Весь интернет перерыл, но так и не нашел примера использования NSCollectionView...

Программно создать Buttons и Popover
Здравствуйте, скажите пожалуйста как по нажатию на программно-созданные кнопки...

Как нажать программно кнопку в другом приложении
День добрый! Возник вопрос программно нажать в другом приложении кнопку;...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

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