在tableView单元格中居中的不稳定文本

时间:2019-06-11 10:39:48

标签: swift xcode tableview

在实际设备上,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)
}

有什么办法可以解决此问题?

1 个答案:

答案 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
    }