打开ViewController时,我想在屏幕底部简化UIAlertView
。
现在,我创建一个警报视图,在2秒后显示它并隐藏警报 但是,警报视图仅显示在屏幕中央。
如何将其重新定位在屏幕底部?
这是我的代码:
let alert = UIAlertController(title: "", message: "Please Swipe To Refresh After 2 seconds", preferredStyle: .alert)
alert.view.frame.origin.x = 150
alert.view.frame.origin.y = 250
self.present(alert, animated: true, completion: nil)
let indicator = UIActivityIndicatorView(frame: alert.view.bounds)
indicator.autoresizingMask = [.flexibleWidth, .flexibleHeight]
alert.view.addSubview(indicator)
indicator.isUserInteractionEnabled = false
indicator.startAnimating()
let when = DispatchTime.now() + 2
DispatchQueue.main.asyncAfter(deadline: when) {
alert.dismiss(animated: true, completion: nil)
}
答案 0 :(得分:5)
您无法移动并UIAlertController
设置其展示样式,即使有解决方法也不要使用它。为了达到你想要的目的,你有不同的选择:
UIView
子类,在show方法中只需要要用作超级视图的视图UIViewController
子类并使用UIPresentationController
呈现它,如果您不熟悉iOS开发,这可能会非常困难答案 1 :(得分:0)
在UIAlertController的构造函数中使用(.... , preferredStyle: .actionSheet)