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