2015-09-01 48 views
0

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

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!)],但只有标题显示了,我猜,只有第一个对象会出现。我怎么能让所有三个人分别在三条线上出现,但在同一个单元格中?

+0

您可以通过编程方式调整标题标签的大小并使其成为多行,或者使用三个标签创建自定义单元格,以便可以微调结果。 –

回答

1

您可以使用字符串替代,例如“\(title!)\(artist!)\(album!)”。

+0

是这样的? 'self.add = [Play(name:(title!)(artist!)(album!)]' – blee

+0

是的,但需要用引号括起来。 –

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” 字符。

相关问题