Exemplo n.º 1
0
        /**
         * Creates a datasource for the listview
         */
        public async void setupDatasource(List <Game> newGames)
        {
            var dict = new Dictionary <Game, Dictionary <int, UIImage> >();

            foreach (var game in newGames)
            {
                var imageTeam1Player1 = await IOSImageUtil.FromUrl(game.team1.player1.imageUrl);

                var imageTeam1Player2 = await IOSImageUtil.FromUrl(game.team1.player2.imageUrl);

                var imageTeam2Player1 = await IOSImageUtil.FromUrl(game.team2.player1.imageUrl);

                var imageTeam2Player2 = await IOSImageUtil.FromUrl(game.team2.player2.imageUrl);

                Dictionary <int, UIImage> images = new Dictionary <int, UIImage>();
                images.Add(1, imageTeam1Player1);
                images.Add(2, imageTeam1Player2);
                images.Add(3, imageTeam2Player1);
                images.Add(4, imageTeam2Player2);

                dict.Add(game, images);
                System.Diagnostics.Debug.WriteLine("Set datasource");
                gameTableView.Source = new TableViewSource(newGames, dict, this);
                gameTableView.ReloadData();
            }
        }
Exemplo n.º 2
0
        public async override void ViewDidLoad()
        {
            base.ViewDidLoad();
            users = new List <iOSUser>();

            //Get all the users (for better performance, convert to paginated lists)
            var userList = await UserCall.getUsers();

            if (userList == null)
            {
                var alertController = UIAlertController.Create("Warning", "Could not connect to server, please try again.", UIAlertControllerStyle.Alert);
                alertController.AddAction(UIAlertAction.Create("Try Again", UIAlertActionStyle.Default, alert => ViewDidLoad()));
                alertController.AddAction(UIAlertAction.Create("No thanks", UIAlertActionStyle.Default, alert => System.Diagnostics.Debug.Write("No thanks was selected")));
                this.PresentViewController(alertController, true, null);
            }
            else
            {
                // Get the image and reload the list when done
                foreach (var user in userList)
                {
                    UIImage image = await IOSImageUtil.FromUrl(user.imageUrl);

                    var iosUser = new iOSUser(image, user);
                    users.Add(iosUser);
                    System.Diagnostics.Debug.WriteLine("NR OF USERS IN LIST: " + users.Count);
                    playersTableView.Source = new SelectPlayerDatasource(users, this);
                    playersTableView.ReloadData();
                }
            }
        }