Перейти к содержанию
Fire Monkey от А до Я
  • 0

TAnonymousThread + iOS


FeLDMARShaL

Вопрос

Стал использовать набор компонентов которые описаны вот тут: http://blogs.embarcadero.com/dclegg/2013/04/30/127

Проблема в том что блок не работает:

FWait: IPleaseWaitService;
...
FWait.StartWait;
try
  //повесли на некоторое время главный поток
  ...
finally
  FWait.StopWait;
end

Из за того что IOS не успевает что то сделать, но непойму что именно, но если мы выполним процедуру StartWait и выйдем из процедуру, а остальной код выполним в таймере, то все отработает так как надо.

 

В исходникак я посмотрел, и не увидел что там можно поменять:

procedure TioSPleaseWait.StartWait;
var
  lView: UIView;
begin
  AtomicIncrement(FCount);
  if FCount = 1 then
  begin
    lView := ActiveView;
    FView := TUIActivityIndicatorView.Create;
    FView.setCenter(lView.center);
    FView.setActivityIndicatorViewStyle(UIActivityIndicatorViewStyleGray);
    lView.addSubview(FView);
    SharedApplication.setNetworkActivityIndicatorVisible(True);
    FView.startAnimating;
  end;


end;

Т.е по факту мне надо добавить что то, что смогло бы обновить и отобразить вновь созданный UIView. Мне это нужно чтобы при выполнении сложной процедура которая подвешивает главный поток отображался индикатор. Я проверил, если создать и отобразить индикатор заранее то он нормально отображается, т.е. не подвисает когда когда зависает главный поток.

 

Ссылка на комментарий

Рекомендуемые сообщения

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...