Да и нет.
По умолчанию Xamarin.Forms создаст ваш общий проект в виде. NET Стандартная библиотека. Поскольку UIKit не является частью. NET Standard, вы не можете использовать его там.
Однако иногда go вы можете выбрать, хотите ли вы использовать. NET Стандартная библиотека или общий проект для обмена кодом. Вы все еще можете создать его вручную, просто он недоступен как часть шаблона по умолчанию. Использование общего проекта для совместного использования кода позволяет вам использовать в нем UIKit (просто пометьте его должным образом директивой #if).
Учитывая, следует или не следует знать, что многие люди скажут, что вам не следует делать это. Но я хотел бы отметить, что человек, который изобрел Xamarin - Мигель де Иказа, сказал, что в команде Xamarin ведутся споры о том, что лучше, и что он лично будет использовать общий проект. Вы не производите код для «должен и не должен», но для того, чтобы заставить его работать и минимизировать долгосрочные затраты, и в каждой теории MVVM вы прочтете, что не следует применять его литературно, если он не может помочь вам в создании Ваш проект лучше.