protected override void OnCreateActivity(Bundle state) { base.OnCreateActivity(state); SetContentView(Resource.Layout.MainDrawerActivity); MainToolbar = FindViewById <Toolbar> (Resource.Id.MainToolbar); DrawerListView = FindViewById <ListView> (Resource.Id.DrawerListView); DrawerUserView = LayoutInflater.Inflate(Resource.Layout.MainDrawerListHeader, null); DrawerUserName = DrawerUserView.FindViewById <TextView> (Resource.Id.TitleTextView); DrawerImage = DrawerUserView.FindViewById <ProfileImageView> (Resource.Id.IconProfileImageView); DrawerListView.AddHeaderView(DrawerUserView); DrawerListView.Adapter = drawerAdapter = new DrawerListAdapter(); DrawerListView.ItemClick += OnDrawerListViewItemClick; var authManager = ServiceContainer.Resolve <AuthManager> (); authManager.PropertyChanged += OnUserChangedEvent; DrawerLayout = FindViewById <DrawerLayout> (Resource.Id.DrawerLayout); DrawerToggle = new ActionBarDrawerToggle(this, DrawerLayout, MainToolbar, Resource.String.EntryName, Resource.String.EntryName); DrawerLayout.SetDrawerShadow(Resource.Drawable.drawershadow, (int)GravityFlags.Start); DrawerLayout.SetDrawerListener(DrawerToggle); var drawerFrameLayout = FindViewById <FrameLayout> (Resource.Id.DrawerFrameLayout); drawerFrameLayout.Touch += (sender, e) => { // Do nothing, just absorb the event // TODO: Improve this dirty solution? }; Timer.OnCreate(this); var lp = new Android.Support.V7.App.ActionBar.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent, (int)GravityFlags.Right); MainToolbar.SetNavigationIcon(Resource.Drawable.ic_menu_black_24dp); SetSupportActionBar(MainToolbar); SupportActionBar.SetTitle(Resource.String.MainDrawerTimer); SupportActionBar.SetCustomView(Timer.Root, lp); SupportActionBar.SetDisplayShowCustomEnabled(true); if (state == null) { OpenPage(DrawerListAdapter.TimerPageId); } else { // Restore page stack pageStack.Clear(); var arr = state.GetIntArray(PageStackExtra); if (arr != null) { pageStack.AddRange(arr); } } // Make sure that the user will see newest data when they start the activity ServiceContainer.Resolve <ISyncManager> ().Run(); }
protected override void OnCreateActivity (Bundle state) { base.OnCreateActivity (state); SetContentView (Resource.Layout.MainDrawerActivity); MainToolbar = FindViewById<Toolbar> (Resource.Id.MainToolbar); DrawerListView = FindViewById<ListView> (Resource.Id.DrawerListView); DrawerUserView = LayoutInflater.Inflate (Resource.Layout.MainDrawerListHeader, null); DrawerUserName = DrawerUserView.FindViewById<TextView> (Resource.Id.TitleTextView); DrawerImage = DrawerUserView.FindViewById<ProfileImageView> (Resource.Id.IconProfileImageView); DrawerListView.AddHeaderView (DrawerUserView); DrawerListView.Adapter = drawerAdapter = new DrawerListAdapter (); DrawerListView.ItemClick += OnDrawerListViewItemClick; var authManager = ServiceContainer.Resolve<AuthManager> (); authManager.PropertyChanged += OnUserChangedEvent; DrawerLayout = FindViewById<DrawerLayout> (Resource.Id.DrawerLayout); DrawerToggle = new ActionBarDrawerToggle (this, DrawerLayout, MainToolbar, Resource.String.EntryName, Resource.String.EntryName); DrawerLayout.SetDrawerShadow (Resource.Drawable.drawershadow, (int)GravityFlags.Start); DrawerLayout.SetDrawerListener (DrawerToggle); var drawerFrameLayout = FindViewById<FrameLayout> (Resource.Id.DrawerFrameLayout); drawerFrameLayout.Touch += (sender, e) => { // Do nothing, just absorb the event // TODO: Improve this dirty solution? }; Timer.OnCreate (this); var lp = new Android.Support.V7.App.ActionBar.LayoutParams (ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent, (int)GravityFlags.Right); MainToolbar.SetNavigationIcon (Resource.Drawable.ic_menu_black_24dp); SetSupportActionBar (MainToolbar); SupportActionBar.SetTitle (Resource.String.MainDrawerTimer); SupportActionBar.SetCustomView (Timer.Root, lp); SupportActionBar.SetDisplayShowCustomEnabled (true); if (state == null) { OpenPage (DrawerListAdapter.TimerPageId); } else { // Restore page stack pageStack.Clear (); var arr = state.GetIntArray (PageStackExtra); if (arr != null) { pageStack.AddRange (arr); } } // Make sure that the user will see newest data when they start the activity ServiceContainer.Resolve<ISyncManager> ().Run (); }
protected override void OnCreateActivity(Bundle bundle) { base.OnCreateActivity(bundle); SetContentView(Resource.Layout.MainDrawerActivity); DrawerListView = FindViewById <ListView> (Resource.Id.DrawerListView); DrawerListView.Adapter = drawerAdapter = new DrawerListAdapter(); DrawerListView.ItemClick += OnDrawerListViewItemClick; DrawerLayout = FindViewById <DrawerLayout> (Resource.Id.DrawerLayout); DrawerToggle = new ActionBarDrawerToggle(this, DrawerLayout, Resource.Drawable.IcDrawer, Resource.String.EntryName, Resource.String.EntryName); DrawerLayout.SetDrawerShadow(Resource.Drawable.drawershadow, (int)GravityFlags.Start); DrawerLayout.SetDrawerListener(DrawerToggle); Timer.OnCreate(this); var lp = new ActionBar.LayoutParams(ActionBar.LayoutParams.WrapContent, ActionBar.LayoutParams.WrapContent); lp.Gravity = GravityFlags.Right | GravityFlags.CenterVertical; var bus = ServiceContainer.Resolve <MessageBus> (); drawerSyncStarted = bus.Subscribe <SyncStartedMessage> (SyncStarted); drawerSyncFinished = bus.Subscribe <SyncFinishedMessage> (SyncFinished); DrawerSyncView = FindViewById <FrameLayout> (Resource.Id.DrawerSyncStatus); syncRetryButton = DrawerSyncView.FindViewById <ImageButton> (Resource.Id.SyncRetryButton); syncRetryButton.Click += OnSyncRetryClick; syncStatusText = DrawerSyncView.FindViewById <TextView> (Resource.Id.SyncStatusText); ActionBar.SetCustomView(Timer.Root, lp); ActionBar.SetDisplayShowCustomEnabled(true); ActionBar.SetDisplayHomeAsUpEnabled(true); ActionBar.SetHomeButtonEnabled(true); if (bundle == null) { OpenPage(DrawerListAdapter.TimerPageId); } else { // Restore page stack pageStack.Clear(); var arr = bundle.GetIntArray(PageStackExtra); if (arr != null) { pageStack.AddRange(arr); } } }
protected override void OnCreateActivity (Bundle bundle) { base.OnCreateActivity (bundle); SetContentView (Resource.Layout.MainDrawerActivity); DrawerListView = FindViewById<ListView> (Resource.Id.DrawerListView); DrawerListView.Adapter = drawerAdapter = new DrawerListAdapter (); DrawerListView.ItemClick += OnDrawerListViewItemClick; DrawerLayout = FindViewById<DrawerLayout> (Resource.Id.DrawerLayout); DrawerToggle = new ActionBarDrawerToggle (this, DrawerLayout, Resource.Drawable.IcDrawer, Resource.String.EntryName, Resource.String.EntryName); DrawerLayout.SetDrawerShadow (Resource.Drawable.drawershadow, (int)GravityFlags.Start); DrawerLayout.SetDrawerListener (DrawerToggle); Timer.OnCreate (this); var lp = new ActionBar.LayoutParams (ActionBar.LayoutParams.WrapContent, ActionBar.LayoutParams.WrapContent); lp.Gravity = GravityFlags.Right | GravityFlags.CenterVertical; var bus = ServiceContainer.Resolve<MessageBus> (); drawerSyncStarted = bus.Subscribe<SyncStartedMessage> (SyncStarted); drawerSyncFinished = bus.Subscribe<SyncFinishedMessage> (SyncFinished); DrawerSyncView = FindViewById<FrameLayout> (Resource.Id.DrawerSyncStatus); syncRetryButton = DrawerSyncView.FindViewById<ImageButton> (Resource.Id.SyncRetryButton); syncRetryButton.Click += OnSyncRetryClick; syncStatusText = DrawerSyncView.FindViewById<TextView> (Resource.Id.SyncStatusText); ActionBar.SetCustomView (Timer.Root, lp); ActionBar.SetDisplayShowCustomEnabled (true); ActionBar.SetDisplayHomeAsUpEnabled (true); ActionBar.SetHomeButtonEnabled (true); if (bundle == null) { OpenPage (DrawerListAdapter.TimerPageId); } else { // Restore page stack pageStack.Clear (); var arr = bundle.GetIntArray (PageStackExtra); if (arr != null) { pageStack.AddRange (arr); } } }