I have a UICollectionView, that loads cells from reusable cell, which contains label. An array provides content for that label. I can resize label width depending on content
In Swift 3
let size = (arrayOfStats[indexPath.row] as NSString).size(attributes: nil)