我使用的是Swift 3,Xcode 8.2。
我有一个应用程序,用户启动iPhone相机,我给他们一个弹出窗口,说明如何拍摄好照片。我希望有一种方法可以在UIAlertController
内创建页面。我快速勾画了我想要实现的目标。
代码方面,我不知道该怎么做:
func displayInstructions() {
let insController = UIAlertController(title: "Instructions", message: "Step 1: Do this.", preferredStyle: .alert)
let actionDone = UIAlertAction(title: "OK", style: .cancel) { (action:UIAlertAction) in
//This is called when the user presses the cancel button.
print("You've pressed the done button");
}
//Add the buttons
errorController.addAction(actionDone)
// Some way to addSubviews here??
let pageViewController: UIPageViewController
insController.addSubview(pageViewController)
//Present the instruction controller
self.present(insController, animated: true, completion: nil)
}
非常感谢任何帮助。谢谢!
答案 0 :(得分:3)
UIAlertController
上有一个属性,没有在公共API中公布,但似乎无需通过应用商店审核就可以使用。因此,使用KVC,您可以设置警报控制器的contentViewController
。
let pageViewController: UIPageViewController
// configure pageViewController...
insController.setValue(pageViewController, forKey: "contentViewController")
您还可以通过在其上设置contentViewController
来设置preferredContentSize.height
的尺寸
pageViewController.preferredContentSize.height = 180
这是使用空页面视图控制器
的结果