#if !FORMS_APPLICATION_ACTIVITY && !PRE_APPLICATION_CLASS using System.Diagnostics; using Android.App; using Android.Content; using Android.Content.PM; using Android.OS; using Java.Interop; using Xamarin.Forms.Controls; using Xamarin.Forms.Controls.Issues; using Xamarin.Forms.Platform.Android; using Xamarin.Forms.Platform.Android.AppLinks; namespace Xamarin.Forms.ControlGallery.Android { // This is the AppCompat version of Activity1 [Activity(Label = "Control Gallery", Icon = "@drawable/icon", Theme = "@style/MyTheme", MainLauncher = true, HardwareAccelerated = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)] [IntentFilter(new[] { Intent.ActionView }, Categories = new[] { Intent.ActionView, Intent.CategoryDefault, Intent.CategoryBrowsable }, DataScheme = "http", DataHost = App.AppName, DataPathPrefix = "/gallery/" ) ] public partial class Activity1 : FormsAppCompatActivity { protected override void OnCreate(Bundle bundle) { ToolbarResource = Resource.Layout.Toolbar; TabLayoutResource = Resource.Layout.Tabbar; // Uncomment the next line to run this as a full screen app (no status bar) //Window.AddFlags(WindowManagerFlags.Fullscreen | WindowManagerFlags.TurnScreenOn); base.OnCreate(bundle); if (!Debugger.IsAttached) Insights.Initialize(App.InsightsApiKey, ApplicationContext); #if TEST_EXPERIMENTAL_RENDERERS Forms.SetFlags("FastRenderers_Experimental"); #else Forms.SetFlags("Fake_Flag"); // So we can test for flag initialization issues #endif Forms.Init(this, bundle); FormsMaps.Init(this, bundle); AndroidAppLinks.Init(this); Forms.ViewInitialized += (sender, e) => { // if (!string.IsNullOrWhiteSpace(e.View.StyleId)) { // e.NativeView.ContentDescription = e.View.StyleId; // } }; // uncomment to verify turning off title bar works. This is not intended to be dynamic really. //Forms.SetTitleBarVisibility (AndroidTitleBarVisibility.Never); _app = new App(); // When the native control gallery loads up, it'll let us know so we can add the nested native controls MessagingCenter.Subscribe(this, NestedNativeControlGalleryPage.ReadyForNativeControlsMessage, AddNativeControls); // When the native binding gallery loads up, it'll let us know so we can set up the native bindings MessagingCenter.Subscribe(this, NativeBindingGalleryPage.ReadyForNativeBindingsMessage, AddNativeBindings); // Listen for the message from the status bar color toggle test MessagingCenter.Subscribe(this, AndroidStatusBarColor.Message, color => SetStatusBarColor(global::Android.Graphics.Color.Red)); SetUpForceRestartTest(); LoadApplication(_app); } [Export("IsPreAppCompat")] public bool IsPreAppCompat() { return false; } } } #endif