我有一个带有多行文本的UITableviewCell。我试图找出如何使每一行成为不同的字体大小。
以下是我用来填充表格单元格的代码:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell:UITableViewCell = tableView.dequeueReusableCellWithIdentifier("eventCell")!
cell.textLabel!.textAlignment = NSTextAlignment.Center
cell.textLabel!.numberOfLines = 0
cell.textLabel!.lineBreakMode = NSLineBreakMode.ByWordWrapping
cell.textLabel!.text = self.eventsToday[indexPath.row].eventTitle + "\n" + self.eventsToday[indexPath.row].eventPlaceName
return cell
}
有没有办法在“\ n”换行符后减小字体大小,以便标记为“eventPlaceName”的字符串显示为小于标记为“eventTitle?”的字符串。
答案 0 :(得分:1)
答案 1 :(得分:1)
有没有办法在" \ n"之后减小字体大小?换线如此 字符串标记为" eventPlaceName"将显示为小于 标有" eventTitle?"
的那个
这听起来就像您的表格视图单元格需要两个单独的标签:
我的意思是,你可以使用属性字符串,但显然这些是两个独立的信息,你在这里有一个重复的模式。在我看来,两个标签听起来像是最好的做法/不那么令人头疼的事。
如何添加额外标签:
UITableViewCell
(让我们在下面的代码中调用自定义子类CustomTableCell
。)忘记原始标签(它不会在故事板中显示,因此您无法相对于它定位第二个标签);而是将 TWO 新标签添加到单元格,并使用自定义单元格子类设置插座。为属性命名(例如)eventTitleLabel
和eventPlaceLabel
。设置您可能需要的任何布局约束,并配置字体大小,颜色等。
在运行时,设置标签'像这样的文字:
let cell = tableView.dequeueReusableCellWithIdentifier("YourCellIdentifier", forIndexPath: indexPath) as! CustomTableCell
// (forced cast shouldn't fail f identifier is registered properly)
cell.eventTitleLabel.text = "Event Title XXXX"
cell.eventPlaceLabel.text = "Event Place YYYY"
return cell