如何打印仅根据单击的按钮从文本文件中选择行。
因此,如果单击按钮 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
}
}
}
希望它仅根据在上一个屏幕上单击的按钮打印我提交的文本行。
您可以根据需要拆分文本,在这里我假设这些行通过换行符分隔
另外,最好在方法外部加载一次字符串
正如@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
}
}