Выбранная строка iOS не вызывается

1

Ive добавил оператор печати в мой выбранный метод, и он никогда не вызывается:

    public override void RowSelected (UITableView tableView, NSIndexPath indexPath)
    {
        Console.WriteLine ("Row selected");
    }

Мои ячейки имеют UIImageView который охватывает всю ячейку, действующую как фоновое изображение. Может ли это заставлять строку не распознавать прикосновение?

  • 0
    Вы должны установить изображение в качестве фона. В противном случае оно покроет клетку.
  • 0
    @CrimsonChris Может ли фоновое изображение быть изображением? Или мне нужно разыграть?
Показать ещё 5 комментариев
Теги:
xamarin
xamarin.ios

2 ответа

1
Лучший ответ

Пришлось позвонить:

MyTableView.AllowsSelection = true;

По умолчанию оно должно быть установлено в false.

0

Добавление последних: Visual Studio/Xamarin iOS/С#

1) Добавьте IUITableViewDelegate в ViewController.cs

2) В ViewDidLoad:

public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            this.yourTableview.Delegate = this;
            this.yourTableview.AllowsSelection = true;
        }

3) Внедрите метод IUITableViewDelegate.

[Export("tableView:didSelectRowAtIndexPath:")]
public virtual void RowSelected(UITableView tableView, NSIndexPath indexPath)
{
    Console.WriteLine("Row Selected");
}

Обратите внимание, что RowSelected не будет вызываться, если [Export ("tableView: didSelectRowAtIndexPath:")] не добавлен.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню