如何执行操作,仅根据单击的按钮来打印文本文件中选择的行。
因此,如果单击按钮1,则我的文本文件中的文本的第4行将打印到UILabel。
现在,它会打印整个文件。
@IBOutlet weak var AboutLabel: UILabel!
@IBAction func GetAboutInfo(_ sender: UIButton) {
if let path = Bundle.main.path(forResource: "Meditations", ofType: "txt") {
if let text = try? String(contentsOfFile: path,
encoding: String.Encoding.utf8) {
AboutLabel.text = text
}
}
}
希望仅根据上一个屏幕上单击的按钮来打印我提交的文本行。
答案 0 :(得分:0)
您可以根据需要拆分文本,这里我假设通过换行符 \ n
来分隔行此外,最好在方法外加载字符串
@rmaddy建议,一个更好的选择是.plist
let meditationsPath = Bundle.main.path(forResource: "Meditations", ofType: "txt")!
let meditationText = try String(contentsOfFile: meditationsPath,
encoding: String.Encoding.utf8)
let meditationTextArray = meditationText.split(separator: "\n")
您的getAboutInfo
将成为
// Name your methods and variables with camel case
@IBAction func getAboutInfo(_ sender: UIButton) {
// Assign the button tag for index
let index = sender.tag
if index < meditationTextArray.count {
let text = meditationTextArray[index]
self.aboutLabel.text = text
}
}