如何将多个对象添加到表格视图单元格?

时间:2015-09-01 15:34:16

标签: ios swift

如何在同一个单元格中添加多个对象?

func getNowPlayingItem() {
    if let nowPlaying = musicPlayer.nowPlayingItem {
        let title = nowPlaying[MPMediaItemPropertyTitle] as? String
        let artist = nowPlaying[MPMediaItemPropertyArtist] as? String
        let album = nowPlaying[MPMediaItemPropertyAlbumTitle] as? String
        println("Song: \(title)")
        println("Artist: \(artist)")
        println("Album: \(album)")
        println("\n")


        self.add = [Play(name: title!)]
        self.table.rowHeight = UITableViewAutomaticDimension
        self.table.estimatedRowHeight = 44.0

    }
}

我尝试将[Play(name: title!)]修改为[Play(name: title! + artist! + album!)],但只显示标题,我猜测只会显示第一个对象。我怎样才能让所有三个都出现在三条不同的线上,但是在同一个单元格中呢?

2 个答案:

答案 0 :(得分:1)

你可以使用字符串替换,即“\(title!)\(artist!)\(album!)”代替。

答案 1 :(得分:1)

tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell设置UITableViewCell的以下属性。

cell.textLabel?.numberOfLines = 3;
cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping

默认情况下,您的UITableViewCell仅显示第一行文本。因此,您需要将numberOfLines设置为3。 然后:

self.add = [Play(name: "\(title!)\n\(artist!)\n\(album !)")]

注意换行符“\ n”字符。