Как открыть вид с помощью кнопки по умолчанию - PullRequest
0 голосов
/ 22 марта 2011

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

Спасибо,

Ответы [ 3 ]

0 голосов
/ 22 марта 2011

Держите единый селектор для всех кнопок, что-то вроде

[btn addTarget:self action:@selector(templateSelected:) forControlEvents:UIControlEventTouchUpInside];

и используйте тег для переноса любого индекса в селектор

[btn setTag:integer];

и если вы хотите отслеживать ранее нажатую кнопку, сохраните глобальный (id) и присвойте текущий адрес кнопки этому идентификатору.

И если вы хотите, чтобы первая кнопка была нажата при загрузке, вызовите функцию мелодраматически во время инициализации первой кнопки.

[self templateSelected:firstButton];
0 голосов
/ 22 марта 2011

Может быть, это поможет вам

- (void)didClickButton:(id)sender {
UIButton *optionButton = (UIButton *)sender;
if(lastSelectedButton.tag!= optionButton.tag) {
optionButton.selected = YES;
//According to your needs enable or disable the button's interaction
}

Здесь lastSelectedButton должна быть переменной экземпляра.

0 голосов
/ 22 марта 2011

То, что вы описываете, звучит как сегментированный элемент управления. По сути, сегментированный элемент управления работает как кнопки на магнитофоне (я знаю, знакомясь с ним). Когда вы нажимаете кнопку «Воспроизвести», он остается в нажатом состоянии и не может быть нажат снова до тех пор, пока вы не нажмете «Стоп», «FF» или «Перемотка назад» и т. Д. это действительно не работает, но остальные кнопки работают)

К сожалению, я не верю, что вы можете использовать свои собственные изображения в UISegmentedControl, но, к счастью, есть версия с открытым исходным кодом, которая должна работать для вас: https://github.com/xhan/PlutoLand/blob/master/PLSegmentView.h

Если у вас есть элемент управления, вы можете изменить содержимое основного представления в зависимости от значения сегментированного элемента управления. Вы можете справиться с этим в событии UIControlEventValueChanged

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...