MonoTouch UITableView Вопросы - PullRequest
       0

MonoTouch UITableView Вопросы

1 голос
/ 26 ноября 2011

Я использую UITableView в своем приложении. У меня есть следующие вопросы:

  1. Мне нужно знать, когда пользователь выбрал строку. Из того, что я понял, мне нужно написать класс, который реализует UITableViewDelegate. Затем мне нужно переопределить метод RowSelected. Есть ли в любом случае сделать это в моем контроллере (в отличие от создания другого класса). Это похоже на излишество. Что-то вроде myTableView.RowSelected += MyMethod(). Я не уверен, почему RowSelected не событие вообще ...

  2. Я хочу обрезать заголовок UITableView (текст в заголовке) слева (по умолчанию справа). Я знаю, что вы можете установить LineBreakMode, но похоже, что я должен сделать это в методе GetViewForHeader (создавая свой собственный UIView, который находится в заголовке). Есть ли более простой способ сделать это?

1 Ответ

2 голосов
/ 26 ноября 2011

MonoTouch предлагает (почти) полные привязки к iOS SDK - т.е. некоторые вещи уже существуют в библиотеке базовых классов .NET и не дублируются (но мы добавим их, если они вам понадобятся, просто заполните ошибка в таких случаях).

Обычно эти привязки очень близки к исходному API (либо C , либо на основе Objective-C), поскольку:

  • процесс связывания в значительной степени автоматизирован с помощью инструмента btouch , поставляемого с MonoTouch (который можно использовать для привязки собственного ObjectiveC API);

  • это действительно помогает портировать существующий код, найти примеры кода и документацию API (сайт разработчика Apple, блоги, вопросы здесь на stackoverflow.com ...)

Я не уверен, почему RowSelected не является событием, в первую очередь ...

События, как обеспечивает .NET, не существуют в Objective-C.В многих (но не во всех) случаях MonoTouch добавил события в стиле .NET, что позволяет вам избегать определения собственных типов xxxDelegates.В общем случае события называются On + имя селектора делегата.

Есть ли более простой способ сделать это?

В случае UITableViewAPI (ObjectiveC) IMHO немного сбивает с толку - но есть альтернатива: MonoTouch.Dialog .Это облегчает работу с таблицами намного и имеет дружественный к .NET API.

ps, пожалуйста, попробуйте задать только один вопрос для каждой записи, поскольку вы не можете пометить несколько ответов как общепринятый .Это также поможет людям, которые ищут похожие вопросы / ответы на сайте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...