Я строю статью, читающую приложение. Я реализовал UIActivityViewController в UITableViewController программным способом. Я столкнулся с проблемой, когда я меняю ориентацию устройства, изменилось положение UIActivityViewController.Позиция UIActivityViewController изменилась при изменении ориентации устройства?
Это мой код:
indicator = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
if (UIDeviceOrientationIsLandscape([UIDevice currentDevice].orientation))
{
indicator.center = CGPointMake(350, 300);
[self.tableView addSubview:indicator];
[UIApplication sharedApplication].networkActivityIndicatorVisible = TRUE;
[indicator layoutIfNeeded];
}
else{
indicator.center = CGPointMake(200, 400);
[self.tableView addSubview:indicator];
[UIApplication sharedApplication].networkActivityIndicatorVisible = TRUE;
}
Если возможно путем применения ограничений программно, как я могу это сделать.
Помощь приветствуется!
@thanks Dan я редактировал свой код выше [self.view layoutIfNeeded] это не дают никакого эффекта.. – Daljeet
Было бы хорошо знать, где находится ваш код. Потому что я не вижу, как он может реагировать на изменение ориентации. Вы решаете, какой центр применять только один раз, когда вы создаете индикатор и добавляете его в иерархию представлений. До iOS 7 вы могли бы использовать 'didRotateFromInterfaceOrientation:' на iOS 8 это устарело, и вы должны использовать 'viewWillTransitionToSize: withTransitionCoordinator:' –