UITableViewCell中的换行符

时间:2016-04-28 19:26:29

标签: c# ios uitableview xamarin

我有UITableViewCell UILabel我需要在每个单元格中显示多行。

谁能告诉我要做什么? 因为我没有得到。 谢谢。

public override UITableViewCell GetCell (UITableView tableView, Foundation.NSIndexPath indexPath)
{
    UITableViewCell cell = tableView.DequeueReusableCell (cellIdentifier); 
    if (cell == null)
        cell = new UITableViewCell (UITableViewCellStyle.Subtitle, cellIdentifier);
    cell.TextLabel.Lines = 0;
    cell.TextLabel.SizeToFit ();
    cell.TextLabel.LineBreakMode = UILineBreakMode.WordWrap;
    cell.TextLabel.Text = wodsFemininos [indexPath.Row].Nome;
    cell.DetailTextLabel.Text = wodsFemininos [indexPath.Row].Masculino;
    return cell;
}

2 个答案:

答案 0 :(得分:0)

您必须创建一个自定义单元格(使用XIB)并使用UITextView来使用某些行

import UIKit
class CustomCell: UITableViewCell{

@IBOutlet weak var text: UITextView!
@IBOutlet weak var detail: UILabel!

override func awakeFromNib() {
    super.awakeFromNib()
    // Initialization code
}

override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)

}
class func cellId() -> String{
    return "CustomCell"
}

}

现在在TableView方法

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

let cell = tableView.dequeueReusableCellWithIdentifier(CustomCell.cellId() , forIndexPath: indexPath) as! CustomCell

cell.text.text = wodsFemininos [indexPath.Row].Nome;
cell.detail.text = wodsFemininos [indexPath.Row].Masculino;

return cell;
}

答案 1 :(得分:0)

您是否看过这个示例代码:
https://github.com/xamarin/monotouch-samples/tree/master/GrowRowTable

执行文件:
https://developer.xamarin.com/guides/ios/user_interface/tables/autosizing-row-height/

它将具有实现此目的所需的xib和autolayout约束。

  

<强> GrowRowTable

     

从iOS 8开始,Apple添加了创建表视图(UITableView)的功能,该表视图可以使用自动布局,大小类和自动布局,根据内容的大小自动增大和缩小给定行的高度。约束

     

此示例显示如何使用自动调整行高度创建表视图。

看起来像这样:

enter image description here