UIActivityIndicatorView в заголовке раздела UITableView исчезает при изменении ориентации - PullRequest
1 голос
/ 20 июля 2010

У меня есть приложение для iPhone, содержащее UITableView в сгруппированном стиле.В ViewController я определил UIActivityIndicatorView как свойство:

self.browsingIndicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
browsingIndicator.hidesWhenStopped = YES;

Я хочу поместить этот счетчик в один из заголовков раздела таблицы:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
    UIView *sectionHeader = [[[UIView alloc] init] autorelease];
    [sectionHeader addSubview:browsingIndicator];
    browsingIndicator.center = CGPointMake(20, 30);

    return sectionHeader;
}

Это работает.Теперь проблема: как только я меняю ориентацию устройства, индикатор активности исчезает, он появляется только после того, как я перетаскиваю его из видимого экрана и обратно. Поворот устройства к исходной ориентации не помогает, изменяя «hidesWhenStopped» на NOни один.

Может ли кто-нибудь направить меня в правильном направлении?Спасибо!

Ответы [ 2 ]

1 голос
/ 20 июля 2010

Спасибо за ваш ответ, Майк, но я не думаю, что это так.UIActivityIndicatorView правильно позиционируется и изменяется, но не рисуется.Когда я заставляю sectionHeader перерисовывать (прокручивая его вне поля зрения), он вращается точно в правильном месте, даже в горизонтальной ориентации.

Я пытался явно установить autoResizingMask, но это не изменило исчезновение 1.

Редактировать: Не удалось прокомментировать ваш ответ, я действительно не получил сообщение / комментарий без регистрации здесь, извините: - /

Edit2:

[sectionHeader addSubview:browsingIndicator];

, кажется, является частью проблемы.Если я возвращаю browsingIndicator напрямую, он работает.

Вид решен сейчас: если я определяю UIView для заголовка раздела вне метода viewForHeaderInSection, а затем просто возвращаю его, он работает.

0 голосов
/ 20 июля 2010

Вы хотите соответствующим образом установить свойство autoResizingMask счетчика.

...