У меня есть приложение, использующее Xamarin.Forms с UWP / Andoid / iOS, и я хочу перенести его на Xamarin.Mac. официальная документация предлагает создать подкласс NSApplicationDelegate через:
[Register ("AppDelegate")]
public class AppDelegate : NSApplicationDelegate
К сожалению, Visual Studio не находит класс NSApplicationDelegate. Я пытался указать это через:
[Register("AppDelegate")]
public class AppDelegate : Xamarin.Forms.Platform.MacOS.NSApplicationDelegate
Здесь он находит Xamarin.Forms.Platform.MacOS
, но все еще не NSApplicationDelegate
.
Он действительно находит FormsApplicationDelegate
, но решение, которое я нашел в Интернете, которое использует этот класс, создает дополнительное окно, которое мне не нужно.
Приложение на основе Xamarin Forms.
его в AppKit: AppKit.NSApplicationDelegate
Ваш зарегистрированный AppDelegate должен быть унаследован от FormsApplicationDelegate
, в функции Main
NSApplication.SharedApplication.Delegate должен быть назначен новый экземпляр AppDelegate, а ваш info.plist НЕ должен содержать «Основное имя файла раскадровки».
Это может быть лучшим руководством для подражания: docs.microsoft.com/en-us/xamarin/xamarin-forms/platform/mac. Связанное вами руководство предназначено не для Xamarin.Forms, а для работы с чистым приложением Xamarin.Mac (без Xam.Forms)
Вы создаете приложение Xamarin.Mac на основе Xamarin.Forms, приложение Xamarin.Mac на основе раскадровки или приложение Xamarin.Mac, основанное исключительно на коде?