Exemplo n.º 1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.DisplayTeamsLayout);

            TextView displayTeamsTeam1DetailsTextView = FindViewById <TextView>(Resource.Id.displayTeamsTeam1DetailsTextView);
            TextView displayTeamsTeam1TeamPriceText   = FindViewById <TextView>(Resource.Id.displayTeamsTeam1TeamPriceText);
            ListView displayTeamsTeam1PlayerListView  = FindViewById <ListView>(Resource.Id.displayTeamsTeam1PlayerListView);

            displayTeamsTeam1PlayerListView.SetMinimumHeight(1000);

            TextView displayTeamsTeam2DetailsTextView = FindViewById <TextView>(Resource.Id.displayTeamsTeam2DetailsTextView);
            TextView displayTeamsTeam2TeamPriceText   = FindViewById <TextView>(Resource.Id.displayTeamsTeam2TeamPriceText);
            ListView displayTeamsTeam2PlayerListView  = FindViewById <ListView>(Resource.Id.displayTeamsTeam2PlayerListView);

            Button             returnToMainMenuButton = FindViewById <Button>(Resource.Id.displayTeamsReturnToMainMenuButton);
            List <FantasyTeam> fantasyTeams           = fantasyTeamRepository.GetAllFantasyTeams();

            InsertDataIntoUIComponents(fantasyTeams[0], displayTeamsTeam1DetailsTextView, displayTeamsTeam1TeamPriceText, displayTeamsTeam1PlayerListView);
            InsertDataIntoUIComponents(fantasyTeams[1], displayTeamsTeam2DetailsTextView, displayTeamsTeam2TeamPriceText, displayTeamsTeam2PlayerListView);

            returnToMainMenuButton.Click += (sender, args) =>
            {
                Finish();
            };
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.DeleteFantasyTeam);

            Button deleteFantasyTeam1Button = FindViewById <Button>(Resource.Id.deleteFantasyTeam1Button);
            Button deleteFantasyTeam2Button = FindViewById <Button>(Resource.Id.deleteFantasyTeam2Button);

            List <FantasyTeam> allFantasyTeams = fantasyTeamRepository.GetAllFantasyTeams();

            deleteFantasyTeam1Button.Text = allFantasyTeams[0].FantasyTeamName;
            deleteFantasyTeam2Button.Text = allFantasyTeams[1].FantasyTeamName;

            deleteFantasyTeam1Button.Click += (sender, args) =>
            {
                DeleteSelectedFantasyTeam(allFantasyTeams[0]);
                Finish();
            };

            deleteFantasyTeam2Button.Click += (sender, args) =>
            {
                DeleteSelectedFantasyTeam(allFantasyTeams[1]);
                // Finishing activity call not put into `DeleteSelectedFantasyTeam()` because a method should have a single purpose
                Finish();
            };
        }
Exemplo n.º 3
0
        void ResetApp()
        {
            List <FantasyTeam> allFantasyTeams = fantasyTeamRepository.GetAllFantasyTeams();

            foreach (FantasyTeam team in allFantasyTeams)
            {
                fantasyTeamRepository.RemoveFantasyTeam(team);
            }

            playerRepository.ResetFantasyTeamSelection();

            // Alert user that app reset has taken place
            Toast.MakeText(this, Resource.String.admin_reset_app_toast_message, ToastLength.Short).Show();
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.PickTeams);

            // Getting UI elements from layout
            currentManagerTurnTextView  = FindViewById <TextView>(Resource.Id.currentManagerTurn);
            remainingFantasyTeamBalance = FindViewById <TextView>(Resource.Id.remainingTeamBalance);

            selectablePlayersList = FindViewById <ListView>(Resource.Id.selectablePlayers);
            Button nextTurnButton = FindViewById <Button>(Resource.Id.nextTurnButton);

            // Disable next turn button until a player has been selected
            nextTurnButton.Enabled = false;

            // Create list view to show which players the user can select on their turn
            selectablePlayersList.ChoiceMode = ChoiceMode.Single;
            List <Player> selectablePlayers        = new List <Player>();
            PlayerAdapter selectablePlayersAdapter = new PlayerAdapter(this, selectablePlayers, Android.Resource.Layout.SimpleListItemActivated2);

            selectablePlayersList.Adapter = selectablePlayersAdapter;

            // Get a list of stages
            List <Stage> stages = Stages.GetStagesOfTeamSelection();

            // Randomly select which manager should go first
            currentManagerTurnPointer = SelectStartingManager();

            // Get fantasy teams
            allFantasyTeams = fantasyTeamRepository.GetAllFantasyTeams();

            // Resetting any previous team selections
            playerRepository.ResetFantasyTeamSelection();

            StageManagementWrapper(stages, selectablePlayersAdapter, allFantasyTeams);
            ArrangeNewTurn(selectablePlayersAdapter, allFantasyTeams);

            string currentManagerFirstName = allFantasyTeams[currentManagerTurnPointer].ManagerFirstname;
            string currentManagerSurname   = allFantasyTeams[currentManagerTurnPointer].ManagerSurname;
            string currentFantasyTeamName  = allFantasyTeams[currentManagerTurnPointer].FantasyTeamName;

            currentManagerTurnTextView.Text  = NameTeamTextFormatting.FormatNameAndTeam(currentManagerFirstName, currentManagerSurname, currentFantasyTeamName);
            remainingFantasyTeamBalance.Text = fantasyTeamRepository.GetRemainingFantasyTeamCost(allFantasyTeams[currentManagerTurnPointer].FantasyTeamID).ToString();

            selectablePlayersList.ItemSelected += (sender, args) =>
            {
                selectedPlayer = selectablePlayersAdapter[args.Position];
            };

            nextTurnButton.Click += (sender, args) =>
            {
                selectedPlayer.FantasyTeamID = allFantasyTeams[currentManagerTurnPointer].FantasyTeamID;
                playerRepository.UpdatePlayer(selectedPlayer);

                // Deselect item when turn is finished
                if (selectablePlayersList.CheckedItemPositions != null)
                {
                    selectablePlayersList.CheckedItemPositions.Clear();
                    nextTurnButton.Enabled = false;
                }

                if (turnCounter == 2)
                {
                    // Checking if there are uncompleted stages left
                    if (stages.Count != 0)
                    {
                        StageManagementWrapper(stages, selectablePlayersAdapter, allFantasyTeams);
                        turnCounter += 1;
                    }
                    else
                    {
                        StartActivity(typeof(DisplayTeamsActivity));
                        Finish();
                    }
                }
                else
                {
                    currentManagerTurnPointer = currentManagerTurnPointer ^ 1;

                    // Go to next turn
                    ArrangeNewTurn(selectablePlayersAdapter, allFantasyTeams);
                }

                currentManagerFirstName          = allFantasyTeams[currentManagerTurnPointer].ManagerFirstname;
                currentManagerSurname            = allFantasyTeams[currentManagerTurnPointer].ManagerSurname;
                currentFantasyTeamName           = allFantasyTeams[currentManagerTurnPointer].FantasyTeamName;
                currentManagerTurnTextView.Text  = NameTeamTextFormatting.FormatNameAndTeam(currentManagerFirstName, currentManagerSurname, currentFantasyTeamName);
                remainingFantasyTeamBalance.Text = fantasyTeamRepository.GetRemainingFantasyTeamCost(allFantasyTeams[currentManagerTurnPointer].FantasyTeamID).ToString();

                // Data will have changed so list view needs refreshing - player selected or new stage, one or both
                selectablePlayersAdapter.NotifyDataSetChanged();
            };

            selectablePlayersList.ItemClick += (sender, args) =>
            {
                // Enable next turn button now a player has been selected
                nextTurnButton.Enabled = true;
                GetSelectedPlayer(args, selectablePlayersAdapter);
            };
        }