无法在表中显示多个文本标签

时间:2015-07-12 15:02:35

标签: swift

我在swift上使用以下代码尝试让它显示多个文本标签,但由于某种原因,它只显示操作系统标签。

这可能是非常明显的事情,我只是愚蠢/盲目,但我无法在我的生命中找到它。感谢。

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

    let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, 
                                                reuseIdentifier: "Default")

    cell.textLabel?.text = servInfo.servers[indexPath.row].name
    cell.textLabel?.numberOfLines = 0
    cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping
    cell.textLabel?.text = "Username: " + servInfo.servers[indexPath.row].username
    cell.textLabel?.text = "Password: " + servInfo.servers[indexPath.row].password
    cell.textLabel?.text = "IPv4 Address" + servInfo.servers[indexPath.row].ipv4
    cell.textLabel?.text = "IPv6 Address" + servInfo.servers[indexPath.row].ipv6
    cell.textLabel?.text = "Protocol:" + servInfo.servers[indexPath.row].pcal
    cell.textLabel?.text = "Operating System: " + servInfo.servers[indexPath.row].os
    cell.detailTextLabel?.text = servInfo.servers[indexPath.row].addi

    return cell
}

2 个答案:

答案 0 :(得分:0)

你没有连接字符串。 你正在删除cell.textLabel的内容并在每一行写一个新文本。

使用字符串连接。

使用此:

cell.textLabel.text + =(" blabla" +" \ n");

cell.textLabel.text + =(" blabla" +" \ n");

或使用此:

cell.textLabel.text = cell.textLabel.text +(" blabla" +" \ n");

cell.textLabel.text = cell.textLabel.text +(" blabla" +" \ n");

而不是:

cell.textLabel.text =" blabla&#34 ;;

cell.textLabel.text =" blabla&#34 ;;

答案 1 :(得分:0)

除了其他答案之外,它更便宜 - 更具描述性 - 在变量中组合整个字符串然后设置标签。 我还添加了几个换行符

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

    let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle,
      reuseIdentifier: "Default")

    let server = servInfo.servers[indexPath.row]
    var text = server.name
    text += "\nUsername: " + server.username
    text += "\nPassword: " + server.password
    text += "\nIPv4 Address" + server.ipv4
    text += "\nIPv6 Address" + server.ipv6
    text += "\nProtocol:" + server.pcal
    text += "\nOperating System: " + server.os

    cell.textLabel?.numberOfLines = 0
    cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping
    cell.textLabel?.text = text
    cell.detailTextLabel?.text = server.addi

    return cell
}