TableViewCell披露指标位置

时间:2015-07-12 13:35:28

标签: ios swift uitableview

我有一个自定义的tableviewcell,标准的公开指示器默认位于垂直中心。如何像iOS邮件应用程序一样垂直移动此标准披露指标?

enter image description here

3 个答案:

答案 0 :(得分:12)

您可以通过对单元格进行子类化并在单元格的子视图(代表指示符)中查找UIButton并保留对它的引用来调整默认附件的位置。然后,您可以在layoutSubviews中或在您选择的任何地方更新accessoryButton的框架:

class CellSubclass: UITableViewCell {

    var accessoryButton: UIButton?

    override func awakeFromNib() {
        super.awakeFromNib()
        accessoryType = .DisclosureIndicator
        accessoryButton = subviews.flatMap { $0 as? UIButton }.first
    }

    override func layoutSubviews() {
        super.layoutSubviews()
        accessoryButton?.frame.origin.y = 8
    }
}

答案 1 :(得分:0)

您无法垂直移动标准披露指标。

如果您想要实现此功能,那么您需要使用自定义单元格并使用公开指示器的图像,然后您可以使用按钮设置此图像,无论您想要放置哪个位置。

或者您也可以将视图用作附件指示符,并添加为UITableViewCell

的子视图
[cell.contentView addSubview:aView];

您可以在此处阅读更多内容disclosure indicator

答案 2 :(得分:0)

您可以在.xib中将TableViewCell上的布局边距修改为固定,然后将右边距设置为所需的值。