示例#1
0
        async void ChangeIcon()
        {
            //This is just here for testing purposes. Going to tie into a live setting instead
            var max     = Enum.GetValues(typeof(Usage)).Cast <int> ().Max();
            int current = (int)Settings.CurrentUsage;

            while (true)
            {
                await Task.Delay(1000);

                current++;
                if (current > max)
                {
                    current = 0;
                }
                Settings.CurrentUsage = (Usage)current;
                var nav  = this.Parent as NavigationPage;
                var icon = D.OnPlatform(new FileImageSource {
                    File = Images.GetCachedImagePath(Images.CurrentOverviewImageName, 24)
                }, null, null);
                if (nav != null)
                {
                    nav.Icon = icon;
                }
                else
                {
                    Icon = icon;
                }
            }
        }
示例#2
0
 public OverviewPage()
 {
     InitializeComponent();
     this.BindingContext = new OverviewViewModel();
     Icon = D.OnPlatform(new FileImageSource {
         File = Images.GetCachedImagePath(Images.CurrentOverviewImageName, 24)
     }, null, null);
     ChangeIcon();
 }
示例#3
0
        public App()
        {
            InitializeComponent();

            Instance = this;

            SetupIoC();

            var loginPage               = FreshPageModelResolver.ResolvePageModel <LoginViewModel>();
            var playerCreationPage      = FreshPageModelResolver.ResolvePageModel <PlayerCreationViewModel>();
            var loginContainer          = new FreshNavigationContainer(loginPage, NavigationContainerNames.LoginContainer);
            var playerCreationContainer = new FreshNavigationContainer(playerCreationPage, NavigationContainerNames.PlayerCreationContainer);

            var mainContainer = new BottomBarTabbedFoNavigationContainer("ISII Sports", NavigationContainerNames.MainContainer);

            mainContainer.AddTab <GamesViewModel>("Games", Device.OnPlatform("games.png", "games.png", ""));
            mainContainer.AddTab <TeamsViewModel>("Teams", Device.OnPlatform("teams.png", "teams.png", ""));
            mainContainer.AddTab <InfoViewModel>("Info", Device.OnPlatform("info.png", "info.png", ""));

            var tabs = mainContainer.TabbedPages.ToList();

            tabs[0].SetTabColor((Color)Resources["PurplePrimary"]);
            tabs[1].SetTabColor((Color)Resources["GreenPrimary"]);
            tabs[2].SetTabColor(null);

            //se risulto già loggato
            if (Settings.IsLoggedIn)
            {
                var serializedPlayer = Settings.SerializedPlayer;
                //se non mi sono già registrato come player
                if (string.IsNullOrEmpty(serializedPlayer))
                {
                    MainPage = playerCreationContainer;
                }
                else
                {
                    //se sono già un player
                    var player = JsonConvert.DeserializeObject <Player>(serializedPlayer);
                    if (player.Email == Settings.PlayerEmail)
                    {
                        App.Instance.CurrentPlayer = player;
                        MessagingCenter.Send(App.Instance, Messages.UserLoggedIn);
                        MainPage = mainContainer;
                    }
                    else
                    {
                        //altrimenti devo mostrare la pagina di login
                        MainPage = loginContainer;
                    }
                }
            }
            else
            {
                MainPage = loginContainer;
            }
        }