Есть ли способ внедрить специфичные для платформы представления на общие страницы? Скажем, у меня есть TabbedPage в моем общем проекте, и я хотел бы внедрить в него страницу/представление, использующее специфичные для платформы функции 2D-рисования, как это лучше всего решить?
Вставка представлений в Xamarin.Forms
comment
проверьте мой ответ другому пользователю, не уверен, что это то, о чем вы просите: stackoverflow.com/questions/25075125/
- person Sten Petrov   schedule 06.08.2014
Ответы (1)
На ContentPage вы можете добавить свой собственный настраиваемый элемент управления представлением, к которому затем можно добавить Пользовательские средства визуализации — по одному для каждой платформы из этого общего представления.
Это происходит в классах Custom Renderers, где вы можете получить доступ ко всем родным API, таким как переопределение OnDraw (canvas canvas), и выполнять собственный 2D-рисунок на Android и т. д.
Когда вы упоминаете Page/View, я предполагаю, что вы действительно имеете в виду View, поскольку я не верю, что возможно отобразить ContentPage в существующей ContentPage.
person
Pete
schedule
05.08.2014
Теперь можно добавлять собственные представления непосредственно в элементы управления макетом xamarin.forms. В случае общих проектов это может быть #ifdef-ed, для PCL требуется какая-то служба зависимостей. Должно быть немного проще, чем поддерживать пользовательские средства визуализации в большинстве случаев, когда вам просто нужно встроить один собственный элемент управления как есть.
- person irreal; 08.06.2016