Положение UIProgressView в подпредставлении в UIAlertController изменено на разных устройствах - PullRequest
0 голосов
/ 03 ноября 2018

У меня есть iPhone и iPad с установленной iOS 12.1, при компиляции моего swift-кода с помощью Xcode 10.1 и тестировании моего приложения я заметил, что когда я начинаю загрузку, мое подчиненное представление находится в правильном положении на iPad, однако, когда я использую свой iPhone, чтобы протестировать приложение, вспомогательное представление перемещается в ближайший центр сообщения UIAlertController на экране.

Я думаю, что это как-то связано с изменением размера экрана, с iPad и iPhone, из-за которых размер предупреждающего сообщения на экране немного уменьшается, а индикатор выполнения немного перемещается вверх по предупреждающему сообщению. Я не уверен, что это мой код, я добавил изображение этого и мой код ниже. Любая помощь в этом будет благословением, заранее благодарю.

 var alert : UIAlertController!
 var progressUpload : UIProgressView!

 self.alert = UIAlertController(title: "Updating", 
                              message: "Please wait for update to complete..",
                              preferredStyle: .alert)
 self.alert.addAction(UIAlertAction(title: "Cancel", style: .default, handler: 
                              { (action: UIAlertAction!) in }))

 let rect = CGRect(x: 10, y: 70, width: 220, height: 0)
 self.progressUpload = UIProgressView(frame: rect)
 self.progressUpload.setProgress(0.0, animated: true)
 self.progressUpload.transform = CGAffineTransform(scaleX: 1, y:2)
 self.progressUpload.progressTintColor = UIColor.blue
 self.progressUpload.layer.cornerRadius = 5
 self.progressUpload.clipsToBounds = true
 //adds to alert message
 self.alert.view.addSubview(self.progressUpload)

 self.present(self.alert, animated: true, completion: nil)

enter image description here

...