我正在使用Swift 3构建一个问答应用程序,利用UITableViewController列出问题,我想使用Alert View发布问题,并提供多个可供选择的答案。我已经按照自己的意愿使其正常工作,但是有一个大问题,就是长答案字体变小,并通过在答案中间交换文本来截断答案并用省略号代替。
如何让答案在AlertView操作中自动换行,并保持相同大小的字体?请注意,手动在一定字符长度后在答案中插入“\n”不现实,因为问题字典中有数百个问题。
如何让答案在AlertView操作中自动换行,并保持相同大小的字体?请注意,手动在一定字符长度后在答案中插入“\n”不现实,因为问题字典中有数百个问题。
这是 AlertView 的代码:
func showQuestion(questionNum: Int) {
let alertTitle = "Question \(questionNum + 1)"
let qDict = test[questionNum] as! [String:String]
let alertMessage = qDict["Question"]
// create the alert
let alert = UIAlertController(title: alertTitle, message: alertMessage, preferredStyle: UIAlertControllerStyle.alert)
// add the actions (buttons)
if qDict["Option-A"] != "" {
alert.addAction(UIAlertAction(title: qDict["Option-A"], style: UIAlertActionStyle.default, handler: nil))
}
if qDict["Option-B"] != "" {
alert.addAction(UIAlertAction(title: qDict["Option-B"], style: UIAlertActionStyle.default, handler: nil))
}
if qDict["Option-C"] != "" {
alert.addAction(UIAlertAction(title: qDict["Option-C"], style: UIAlertActionStyle.default, handler: nil))
}
if qDict["Option-D"] != "" {
alert.addAction(UIAlertAction(title: qDict["Option-D"], style: UIAlertActionStyle.default, handler: nil))
}
if qDict["Option-E"] != "" {
alert.addAction(UIAlertAction(title: qDict["Option-E"], style: UIAlertActionStyle.default, handler: nil))
}
alert.addAction(UIAlertAction(title: "Come back to this one", style: UIAlertActionStyle.destructive, handler: nil))
// show the alert
self.present(alert, animated: true, completion: nil)
}