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

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
alexsda
0 / 0 / 0
Регистрация: 12.08.2011
Сообщений: 5
#1

Имитация выбора кнопки на UIToolBar - Программирование iOS

06.08.2012, 09:07. Просмотров 1199. Ответов 7
Метки нет (Все метки)

Доброго времени суток!
Недавно начал изучать Objective-C и xCode. К моей некомпетентности прошу отнестись снисходительно.

Подскажите, пожалуйста, как можно реализовать следующе:
В IB создан UIToolBar, на него положено много UIBarButtonItem (по числу букв в алфавите), на title кнопок соответсвенно названия букв алфавита.
Необходимо
2. "снять" с нажатой кнопки название буквы алфавита для последующей обработки.
2. при нажатии на UIBarButtonItem сделать Style - Done, а раннее нажатой кнопки Bordered.

Пытаюсь реализовать:

1. Название буквы алфавита с нажатой кнопки считываю через
Objective-C
1
pressBarButton.title
2.
.h файл
Objective-C
1
2
3
4
5
6
7
8
9
10
#import <UIKit/UIKit.h>
 
@interface ViewController : UIViewController {
    IBOutlet UIToolbar *ToolbarKey;
    UIBarButtonItem   *pressBarButton;
}
 
- (IBAction)controlPresButton:(id)sender; 
 
@end

.m файл
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
    
- (IBAction)controlPresButton:(id)sender {
 
pressBarButton = sender; 
 
    if (pressBarButton.style==1) {
        pressBarButton.style=2;
    } else {
            pressBarButton.style=1;
    }
}
 
@end
Для нажатой кнопки все получается, а вот для ранее нажатой не знаю как сделать.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alexsda
0 / 0 / 0
Регистрация: 12.08.2011
Сообщений: 5
07.08.2012, 21:12  [ТС]     Имитация выбора кнопки на UIToolBar #2
Все еще актуально.

Добавлено через 11 часов 50 минут
Может быть по-другому поставить вопрос,
Как по циклу (i=число кнопок на UIToolBar) перебрать .style всех кнопок для инверсии состояния (стиля отображения) -если 1 , то меняем на 2; если 2, то меняем на 1?
Я просто не знаю как вытащить из свойств ToolBar число находящихся на нем кнопок и как точно указать в коде на конкретную кнопку.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
07.08.2012, 21:31     Имитация выбора кнопки на UIToolBar #3
Если вам для нажатий - при создании выставляйте .tag у кнопки, а при нажатии на неё - смотрите этот тег.
Иначе - можете хранить все кнопки в отдельном массиве.
alexsda
0 / 0 / 0
Регистрация: 12.08.2011
Сообщений: 5
07.08.2012, 22:52  [ТС]     Имитация выбора кнопки на UIToolBar #4
С tag все понятно - можно в IB каждой кнопке задать свой tag и при нажатии его увидеть. Вопрос в другом - на панели более 20-то кнопок. Жмем кнопку с литерой Б - она программно подсвечиваестя, а остальные нет. Затем жмем кнопку с литерой Ю. С первой кнопки надо снять подсветку, а второй дать - завсветить нажатую кнопку просто, а вот как быть с перовй? Как ее найти, ведь при создании панели и кнопок на ней в IB кнопки имена не получают.
Буду рад любому совету!
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
08.08.2012, 05:19     Имитация выбора кнопки на UIToolBar #5
При чем тут IB, не IB, какая разница, у Вас всегда его вьюха, а у неё стек сабвью. Выставьте картинки для разных состояний UIControl, от класса которого и пронаследована кнопка. UIControlStateNormal и UIControlStateHighlighted к примеру.
Если у Вас все в ксибе и Вам нужно найти вьюху, вы можете мануально все кнопки прибиндить как IBOutlet, либо воспользоваться - viewForTag методом.
alexsda
0 / 0 / 0
Регистрация: 12.08.2011
Сообщений: 5
08.08.2012, 07:12  [ТС]     Имитация выбора кнопки на UIToolBar #6
"Я же ведь только учусь..."
Спасибо вам большое! Буду разбираться.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
08.08.2012, 14:32     Имитация выбора кнопки на UIToolBar #7
Для Спасибо там кнопка внизу есть.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.08.2012, 19:51     Имитация выбора кнопки на UIToolBar
Еще ссылки по теме:
C# WPF .NET 4.x Имитация залипания кнопки
Имитация нажатия кнопки 1С
Програмная имитация нажатия кнопки JavaScript
C# ASP.NET Имитация нажатия кнопки Back
C# Имитация нажатия кнопки мыши

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

Или воспользуйтесь поиском по форуму:
alexsda
0 / 0 / 0
Регистрация: 12.08.2011
Сообщений: 5
08.08.2012, 19:51  [ТС]     Имитация выбора кнопки на UIToolBar #8
Еще раз спасибо за наводку!
Возник вопрос: viewForTag помогает найти сам UIToolBar, но не кнопки UIBarButtonItem на UIToolBar. Как можно их найти?
Yandex
Объявления
08.08.2012, 19:51     Имитация выбора кнопки на UIToolBar
Ответ Создать тему
Опции темы

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