Нет встроенного для этого, но это не так сложно достичь.
Чтобы установить индикатор раскрытия (стрелка), внедрите пользовательский рендер, полученный из ImageCellRenderer
, и переопределите GetCell
public override UITableViewCell GetCell(Cell item, UITableViewCell reusableCell, UITableView tv)
{
var viewCell = base.GetCell(item, reusableCell, tv);
viewCell.Accessory = UITableViewCellAccessory.DisclosureIndicator;
return viewCell;
}
Когда пользователь касается этой ячейки, вы должны перейти модально к представлению, отображающему список языков.
Добавление этого Отмена -Кнопка тоже не очень сложная, но требует еще одного шага. Вам нужно будет обернуть новую страницу выбора языка в NavigationPage
и нажать эту NavigationPage
модально. Кроме того, вам придется добавить элемент панели инструментов на завернутую страницу ( см. Здесь ).
На странице есть представление SearchBar
и ListView
под ним. Чтобы добавить флажки, вам нужно реализовать пользовательскую ячейку с пользовательским средством визуализации (полученным из ImageCellRenderer
, как показано выше), задав для UITableViewCell.Accessory
значение Checkmark
, если выбрана пользовательская ячейка
if(item is SelectableCell selectableCell)
{
var selected = selectableCell.IsSelected;
viewCell.Accessory = selected ? UITableViewCellAccessory.Checkmark : UITableViewCellAccessory.Checkmark;
}
Обратите внимание : Выбираемая ячейка - это не ячейка запаса Xamarin.Forms, а ячейка, которую вы должны реализовать самостоятельно, включая свойство привязки IsSelected
.
Это должны быть в основном шаги, необходимые для достижения того, чего вы хотите. Я принял базовые знания Xamarin.Forms, необходимые для заполнения пробелов.