如何在单元格中显示整个文本(Swift)?

时间:2016-08-17 04:17:44

标签: ios swift tableview

这是我用于表格视图控制器的文件。当我运行项目时,单元格会显示用" name"但它不会显示所有这些。

我希望它在同一个单元格中显示整个文本。根据其中所写的内容来确定单元格的大小。

我该如何解决这个问题?

import Foundation
import UIKit

class FTBViewController: UITableViewController {

var names = [String]()
var identities = [String]()

override func viewDidLoad() {

    names = ["This is the text the cell is displaying but it won't show it all"]
    identities = ["A"]

    self.navigationItem.title = "Guía"
    self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()]



}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    return names.count

}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCellWithIdentifier("FCell")

    cell?.textLabel!.text = names[indexPath.row]

    return cell!

}

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    let vcName = identities[indexPath.row]
    let viewController = storyboard?.instantiateViewControllerWithIdentifier(vcName)
    self.navigationController?.pushViewController(viewController!, animated: true)
}
}

2 个答案:

答案 0 :(得分:6)

添加

   cell?.textLabel!.numberOfLines = 0        
    cell?.textLabel!.lineBreakMode = .ByWordWrapping
   cell?.textLabel!.font = UIFont.systemFontOfSize(14.0) // this is optional if you need use this

完整答案

 override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCellWithIdentifier("FCell")
     cell?.textLabel!.numberOfLines = 0        
    cell?.textLabel!.lineBreakMode = .ByWordWrapping
    cell?.textLabel!.font = UIFont.systemFontOfSize(14.0)
    cell?.textLabel!.text = names[indexPath.row]

    return cell!

}

答案 1 :(得分:2)

您可以在 viewdidLoad 中使用以下代码:

{{1}}

希望如此有帮助...