У меня проблема с моим приложением Xamarin Forms. Каждый раз, когда я запускаю решение для Android, конструктор App() вызывается дважды. Я исправил это, установив точку входа приложения в одноэлементный.Xamarin forms App() вызывается дважды при запуске
Но каждый конструктор представлений также вызывается дважды, и я не могу понять, почему?
Это ошибка?
Я должен упомянуть, что я написал все виды в коде позади - и если это имеет какое-то значение - im, используя эмулятор genymotion.
код в App ничего фантазия:
bool isInitialized = false;
public App()
{
if (!isInitialized)
{
isInitialized = true;
navigationPage = new NavigationPage(new LoginView());
MainPage = NavigationPage;
Observer = new NetworkObserver();
Debug.WriteLine("Observer initialized");
}
}
код в андроиде решения - я нету изменил что-нибудь здесь:
[Activity(Label = "XamarinClients", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity :
global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
{
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
}
}
После тестирования приложения IOS, я могу видеть, я имею такую же проблему, ее также дважды вызывает приложение(), а также конструкторы страниц.
Покажите нам некоторый код вашей инициализации (где вы вызываете Forms.Init()). – jsbeckr
Не удалось найти Forms.Init() .. Вы имели в виду приложение()? – OneBigQuestion
О, это было ^^ – OneBigQuestion