取消选择行并删除Xamarin UITableView上的勾号?

时间:2016-06-07 11:34:19

标签: c# ios uitableview xamarin

我已经覆盖了以下方法,该方法对已经选择的单元格进行了一点滴答,但是当我选择不同的行时,刻度线会保留在那里并且不会被删除。

public override void RowSelected(UITableView tableView, NSIndexPath indexPath)
{
    SelectedRow = TableItems[indexPath.Row];

    var cell = tableView.CellAt(indexPath);

    cell.Accessory = (indexPath.Row >= 0) ? UITableViewCellAccessory.Checkmark : UITableViewCellAccessory.None;
}

如何制作它,以便当我选择不同的单元格时,所选择的第一个单元格会丢失它的标记,以便一次只有一个单元格有一个标记?

2 个答案:

答案 0 :(得分:0)

Edit: I forgot there is a RowDeslected method...

You should be able to use the RowDeselected method to accomplish what you want here.

public override void RowDeselected(UITableView tableView, NSIndexPath indexPath){
    var deselectedCell = tableView.CellAt(indexPath);
    deselectedCell.Accessory = UITableViewAccessory.None;
}

答案 1 :(得分:0)

我认为您需要将属性AllowsMultipleSelection设置为false

TableView.AllowsMultipleSelection = false