Как центрировать UIActivityIndicatorView вместе с текстом (UILabel)?

Я несколько раз сталкивался с этой проблемой при разработке iPhone, но пока не нашел для нее хорошего решения. Я ищу это:

Я хочу показать некоторый текст вместе со значком, и я хочу, чтобы общий дисплей был центрирован в его родительском представлении. В частности, в моем текущем случае я хочу отобразить поле с надписью «Повторное подключение ...» с UIActivityIndicatorView слева от текста.

Раньше я просто полагался на тот факт, что точно знаю размеры текста и индикатора активности, поэтому могу расположить элементы так, чтобы они отображались по центру. Я ищу что-то более автоматическое.

Любые идеи?


person Chris R    schedule 01.11.2010    source источник
comment
не знаю, является ли это дубликатом или нет, но этот пост вместе с предоставленным изображением похож на то, что вы ищете stackoverflow.com/questions/1611882/   -  person Aaron Saunders    schedule 02.11.2010
comment
Спасибо за ссылку. В настоящее время мы используем Three20 для ведения журнала, возможно, нам также следует изучить использование элементов пользовательского интерфейса. К сожалению, кто-то должен отредактировать этот пост, чтобы его было легче найти =/   -  person Chris R    schedule 02.11.2010


Ответы (2)


Одно из добавлений UIKit к NSString вернет размер текста в пикселях, если вы дадите ему шрифт, который вы используете в UILabel. Итак, предположительно, общий размер двух вещей вместе в макете, который вы описываете, составляет:

  • разница между label.frame.origin.x и activityIndicatorView.frame.origin.x; плюс
  • ширина текста.

Затем вы можете либо перетасовать оба представления соответствующим образом, либо дать им общий родитель, который по-прежнему является подпредставлением всего этого, и сместить его.

person Tommy    schedule 01.11.2010
comment
В первую очередь я искал что-то более автоматическое (например, родительское представление с автоматическим изменением размера, которое я мог бы установить по центру). Комментарий Three20 выше выглядит настолько близко, насколько я могу. Мое текущее решение состоит в том, чтобы вручную использовать ширину счетчика и текста, чтобы центрировать все. - person Chris R; 02.11.2010

Индикатор активности можно отобразить в представлении, просто вызвав один метод. Нажмите здесь получить класс SHKActivityIndicator

person Govind    schedule 16.05.2012