繁体   English   中英

弄清楚如何摆脱UITableView单元格中单元格的边框

[英]Figuring out how to get rid of border around cell in UITableView cell

最近,我通过使用monotouch.dialog覆盖了GetCell方法来帮助获取单元格上的可用属性。 我现在的问题是我看不到摆脱单元格周围的默认边框。

我能够弄清楚如何在单元格周围绘制自己的边框(我相信它为此使用了核心图形和单元格上的.Layer属性)。 但是,旧边框仍然保留,我找不到属性来禁用此功能。

理想情况下,我希望自己能够自定义现有边框,但是,如果不可能(不需要制作自己的单元格图形),那么我想删除默认边框并使用代码中生成的边框。

请参阅下面的重写方法和到目前为止的屏幕截图:

public override UITableViewCell GetCell(UITableView tableView) {
    var cell = base.GetCell(tableView);
    cell.BackgroundColor = Resources.XDarkGrayColor;
    cell.TextLabel.TextColor = Resources.XWhiteColor;
    cell.Accessory = UITableViewCellAccessory.DisclosureIndicator;
    cell.Layer.ShadowColor = UIColor.Red.CGColor;
    cell.Layer.BorderColor = UIColor.Red.CGColor;
    cell.Layer.BorderWidth = 2.0f;
    cell.Layer.CornerRadius = 5.0f;
    cell.Layer.ShadowRadius = 2.0f;
    cell.Layer.ShadowOpacity = 0.75f;

    return cell;
}

这显示了我使用单元格的.Layer属性在代码中创建的红色边框,然后显示了该单元格周围的默认边框,即该边框位于红色边框的内部

IIRC(目前无法尝试),这是使用背景视图绘制的。 因此,您需要将其删除,例如:

cell.BackgroundView = new UIView (RectangleF.Empty);

或将Bounds属性设置为Empty ,例如:

cell.BackgroundView.Bounds = RectangleF.Empty;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM