[英]C# Monotouch/Xamarin - UITableViewCell GetCell ImageView Frame Not Resizing
[英]Resizing Custom UITableViewCell in Monotouch
我想做的就是增加单个细胞的高度。 我在IB和我的代码中增加了高度,但两者似乎都没有工作。 Poicell是我的自定义uitableviewcell的类。 以下是我的代码:
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
{
var cell = tableView.DequeueReusableCell(kCellIdentifier) as PoiCell;
if (null == cell) {
cell = new PoiCell();
var views = NSBundle.MainBundle.LoadNib("PoiCell", cell, null);
cell = Runtime.GetNSObject(views.ValueAt(0)) as PoiCell;
}
UIImage imgAmenity = UIImage.FromBundle ("Images/ico-ConservationGarden");
UIImage imgRestrooms = UIImage.FromBundle ("Images/ico-restrooms");
RectangleF rectCell = cell.Frame;
rectCell.Height = 50;
cell.Frame = rectCell;
var imageView = new UIImageView(imgAmenity)
{
Frame = new Rectangle(10, 24, 20, 20)
};
var imageView2 = new UIImageView(imgRestrooms)
{
Frame = new RectangleF(30, 24, 20, 20)
};
cell.ContentView.Add(imageView);
cell.ContentView.Add(imageView2);
cell.Title = _poiFilterController.Posts[indexPath.Row].Title;
cell.Distance = _poiFilterController.Posts[indexPath.Row].Distance;
cell.Accessory = UITableViewCellAccessory.DetailDisclosureButton;
return cell;
}
您必须覆盖GetHeightForRow方法并返回每行所需的高度。
public override float GetHeightForRow(UITableView tableView, NSIndexPath indexPath)
{
return 50f;
}
尝试添加:
cell.SetNeedsDisplay();
就在你返回牢房之前。 我相信这是我必须做的才能让它发挥作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.