Перенос представления в другое представление с результатом из другого представления - PullRequest
1 голос
/ 09 февраля 2012

Я создаю простую программу, в которой есть основной вид с сегментированным элементом управления, логотипом и некоторым пустым пространством.Когда пользователь щелкает сегмент сегментированного элемента управления, сразу под сегментированным элементом управления появляется представление, содержащее 6 кнопок, которые ведут пользователя к различным представлениям.кнопка не должна появляться в представлении, где находятся кнопки (что будет, если я использую эту опцию «addSubView»).Вместо этого я хочу, чтобы представление отображалось на весь экран, что означает, что я хочу, чтобы результирующее представление (после нажатия кнопки) появилось на главном экране.

Заранее спасибо.

Ответы [ 5 ]

1 голос
/ 09 февраля 2012

Посмотрите на UINavigationController.Когда пользователь нажимает на одну из шести кнопок, вы можете использовать pushViewController: animated: для перехода к новому представлению.По умолчанию это также даст вам панель навигации в верхней части экрана, позволяющую пользователю вернуться назад.Если вы этого не хотите, вы можете отключить это.

1 голос
/ 09 февраля 2012

Вы можете создать свойство для всех элементов управления, к которым вам нужен доступ за пределами его собственного класса. Тогда вы можете получить к нему доступ, как показано ниже:

Class c = [[Class alloc] init];
someValue = c.mypropery;
0 голосов
/ 10 февраля 2012

Что вы спрашиваете: есть ли способ, чтобы подпредставление могло сказать моему основному представлению добавить новое представление. Это может быть сделано делегированием, одиночками или уведомлениями. Я бы предложил использовать простое уведомление:

// This is your observer listening for the notification named @"LaunchViewOne"
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(LaunchViewOne) name:@"LaunchViewOne" object:nil];

// This is supplying the notification
[[NSNotificationCenter defaultCenter] postNotificationName:@"LaunchViewOne" object:nil];

Поэтому, когда ваша кнопка нажата, используйте postNotification.

0 голосов
/ 09 февраля 2012

Вы все еще можете использовать addSubView:, просто вы не хотите делать [viewWhereYouHaveButtons addSubView:someView], но [yourMainView addSubView:someView].

0 голосов
/ 09 февраля 2012

Я не понимаю ваш вопрос, но вы можете использовать множество методов для управления иерархией представлений

– addSubview:
– bringSubviewToFront:
– sendSubviewToBack:
– removeFromSuperview
– insertSubview:atIndex:
– insertSubview:aboveSubview:
– insertSubview:belowSubview:
– exchangeSubviewAtIndex:withSubviewAtIndex:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...