我想我的单元格在我的单元格中返回标题的前20个字符,我该怎么做?在哪里?我没有找到足够的相关信息,唯一的方法是通过自定义我的单元格
或者我可以设置最大字符在数组上按字符串返回吗?
myCell.textLabel?.text?.characters.count < 20
答案 0 :(得分:2)
我希望我的单元格返回我单元格中标题的前20个字符
这听起来像是一个糟糕的设计。表格和单元格用于显示信息,而不是用于存储信息。一般来说,您应该首先从模型或数据源获取信息来自的信息。应该真正与单元交互的唯一对象是表本身和管理表的视图控制器,视图控制器几乎肯定可以访问数据源。
我该怎么做?
function titleCase(str) {
return text.split(" ").map(function(val,i){
return val[0].toUpperCase() + val.slice(1,val.length)
}).join(" ")
}
var text = "I'm a little tea pot"
console.log(titleCase(text))
//"I'm A Little Tea Pot"
有获取字符串部分的方法。在这种情况下,听起来你想要这个:
API.getNew() {
(result: [Post]?) in
//Ensure to run UI updates in main thread. The ProgressHUD.dismiss(),
//self.tableView.reloadData() must be run in main thread..
dispatch_async(dispatch_get_main_queue(),{
if let ps = result {
ProgressHUD.dismiss()
if self.posts.count != ps.count {
self.posts.removeAll()
self.posts.appendContentsOf(ps)
self.tableView.reloadData()
}
} else {
ProgressHUD.showError("There was a problem getting new posts")
}
})
}
换句话说,使用NSString
的{{1}}方法获取作为标签文字的字符串的前20个字符。