SWIFT 表视图错误
Posted
技术标签:
【中文标题】SWIFT 表视图错误【英文标题】:SWIFT TableView error 【发布时间】:2015-09-03 05:37:50 【问题描述】:class MasterViewController: UITableViewController
let firstTable = [String]()
let secondTable = [String]()
var path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
var content = (data)
var line: [String] = content.componentsSeparatedByString("\n")
错误:
“MasterViewController.Type”没有名为“path”的成员
@dip 的下一个问题 >> 为什么表格打印初始空字符串?文本打印在第二个单元格中,而不是从 0 开始
var path: String?
var data: String?
var TableView1 = [String]()
override func viewDidLoad()
super.viewDidLoad()
self.path = NSBundle.mainBundle().pathForResource("textFile", ofType: "txt")
self.data = String(contentsOfFile:path!, encoding: NSUTF8StringEncoding, error: nil)
if var content = (data)
//var line: [String] = content.componentsSeparatedByString("\n")
var chp: [String] = content.componentsSeparatedByString("#")
TableView1 += chp
...
【问题讨论】:
【参考方案1】:对于计算属性,您必须通过 setter 方法访问, 例如使可选的全局变量像
var path:String?
然后让我们从 viewDidload 内部 说设置值,例如
self.path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
您的错误将消失!希望对您有所帮助!
【讨论】:
可以说我在表格视图中使用它。这将允许我从文本文件中调用一行文本吗? 我提供的答案是'MasterViewController.Type'没有名为'path'的成员错误,我想它应该在你原来的问题的上下文中工作! 这确实感谢。但现在它在第二个单元格而不是第一个单元格中打印文本。知道为什么吗? 您似乎正在使用 \n 转义序列跟踪行,从概念上讲它应该可以工作,请分享您的代码以便于评论!如果它对您有帮助,请不要忘记接受答案:D【参考方案2】:以下更改也可能有效;
private class var path:String
get
return NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")!
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
【讨论】:
【参考方案3】:初始化data
实例的方法是错误的。而不是在您的类方法中执行此操作,假设您可以在 viewDidLoad
方法中执行此操作,如下所示:
override func viewDidLoad()
super.viewDidLoad()
var path = NSBundle.mainBundle().pathForResource("Chapters", ofType: "txt")
var data = String(contentsOfFile:path, encoding: NSUTF8StringEncoding, error: nil)
var content = (data)
var line: [String] = content.componentsSeparatedByString("\n")
【讨论】:
以上是关于SWIFT 表视图错误的主要内容,如果未能解决你的问题,请参考以下文章