我的CollectionViewCell只有UILabel(与单元格相同)。 我正在获取fontNames数组作为CollectionView DataSource:
func printFonts() {
let fontFamilyNames = UIFont.familyNames()
for familyName in fontFamilyNames {
let names = UIFont.fontNamesForFamilyName(familyName as! String)
fontNames.append(familyName as! String)
}
}
我试图在UILabel内的一个行显示这些字体名称,它适用于某些情况,但有些情况下没有,我不明白为什么。
这就是我调整" cellForItemAtIndexPath
内的字体:
cell.lbl_font.adjustsFontSizeToFitWidth = true
cell.lbl_font.numberOfLines = 1
cell.lbl_font.minimumScaleFactor = 0.1
cell.lbl_font.baselineAdjustment = .AlignCenters
cell.lbl_font.textAlignment = NSTextAlignment.Center
我也通过storyBoard修改了这个属性:
结果:
更新:
如何将文本应用于单元格。其中lbl_font
是单元格内的标签,
在cellForItemAtIndexPath
let cell : textCell = collectionView.dequeueReusableCellWithReuseIdentifier("text_cell", forIndexPath: indexPath) as! textCell
cell.lbl_font.text = fontNames[indexPath.row]
cell.lbl_font.font = UIFont(name:fontNames[indexPath.row], size: cell.lbl_font.font.pointSize)
cell.lbl_font.adjustsFontSizeToFitWidth = true
cell.lbl_font.numberOfLines = 1
cell.lbl_font.minimumScaleFactor = 0.1
cell.lbl_font.baselineAdjustment = .AlignCenters
cell.lbl_font.textAlignment = NSTextAlignment.Center
return cell