在实际设备上,tableView Cell中的文本居中出现一个奇怪的问题。在iPhone 6(iOS 12.3.1)上运行代码时,代码可以很好地工作,并且文本正确地位于单元格的中心。但是,当我在iPhone7(iOS 12.3.1)上运行它时,文本在右对齐。当代码在Xcode模拟器上运行时,它可以正常工作。
我正在使用Xcode 10.2.1,并且Xcode不会警告任何错误。 似乎文本居中的问题取决于设备(在两个实际设备上运行时完全没有错误)。
下面是我的代码...
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
// Set text label
cell.textLabel?.textColor = UIColor(red: 74/255, green: 88/255, blue: 205/255, alpha: 1)
cell.textLabel?.textAlignment = .center
// Set font and font size
cell.textLabel?.font = UIFont(name:"Helvetica Neue", size: 17)
}
有什么办法可以解决此问题?
答案 0 :(得分:0)
尝试使用cellForRowAt indexPath代替willDisplay单元格
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell:tableviewCell = tableView.dequeueReusableCell(withIdentifier: "CellID", for: indexPath as IndexPath) as! tableviewCell
// Set text label
cell.textLabel?.textColor = UIColor(red: 74/255, green: 88/255, blue: 205/255, alpha: 1)
cell.textLabel?.textAlignment = .center
// Set font and font size
cell.textLabel?.font = UIFont(name:"Helvetica Neue", size: 17)
return cell
}