protected override void OnCreate() { //Log.Info(ReactConstants.Tag, "## ReactProgram ## Enter Constructor ReactProgram()"); try { _reactInstanceManager = CreateReactInstanceManager(); } catch (Exception ex) { Log.Info(ReactConstants.Tag, "## ReactProgram ## CreateReactInstanceManager Ex:" + ex.ToString()); } //Log.Info(ReactConstants.Tag, "## ReactProgram ## Exit Constructor ReactProgram()"); MainSynchronizationContext.Initialize(SynchronizationContext.Current, Exit); Elementary.Initialize(); Elementary.ThemeOverlay(); //Log.Info(ReactConstants.Tag, "## ReactProgram ## Enter OnCreate()"); ResourceDir = DirectoryInfo.Resource; // 1. Create root window ReactWindow rctWin = new ReactWindow("ElmSharp Window"); RctWindow = rctWin; RctWindow.Show(); RctWindow.BackButtonPressed += (object sender, EventArgs e) => { Log.Debug(ReactConstants.Tag, "## Back button being Pressed ##"); _reactInstanceManager.OnBackPressed(); }; RctWindow.RedButtonPressed += (object sender, EventArgs e) => { Log.Debug(ReactConstants.Tag, "## Red button being Pressed ##"); _reactInstanceManager.DevSupportManager.ShowDevOptionsDialog(); }; // 2. Create root view RootView = CreateRootView(); //RootView.Show(); // 3. Entry of 'JS' world RootView.StartReactApplication(_reactInstanceManager, MainComponentName); // 4. Set root view //RctWindow.Navigator.Push(RootView, "Instagram"); RctWindow.SetMainPage(RootView); base.OnCreate(); //Log.Info(ReactConstants.Tag, "## ReactProgram ## Exit OnCreate()"); }