void AddHeaderInfo () { var headerCellIdentifier = new NSString ("headerCell"); var headerCell = tableView.DequeueReusableCell (headerCellIdentifier) as BeerHeaderCell ?? new BeerHeaderCell (headerCellIdentifier); headerCell.Name = beer?.Name; headerCell.Brewery = beer?.Brewery; headerCell.Abv = beer.ABV.ToString (); headerCell.ConsumedAlpha = 0.3f; headerCell.RatingAlpha = 0.3f; //Lets fire up another thread so we can continue loading our UI and makes the app seem faster. Task.Run (() => { var response = Client.Instance.BeerDrinkinClient.GetBeerInfoAsync (beer.Id.ToString()).Result; if (response.Result != null) beerInfo = response.Result; InvokeOnMainThread (() => { if (beerInfo == null) return; headerCell.Consumed = beerInfo?.CheckIns.ToList ().Count.ToString (); headerCell.Rating = beerInfo?.AverageRating != 0 ? beerInfo.AverageRating.ToString (CultureInfo.InvariantCulture) : "NA"; UIView.Animate (0.3, 0, UIViewAnimationOptions.TransitionCurlUp, () => { headerCell.ConsumedAlpha = 1f; headerCell.RatingAlpha = 1f; }, () => { }); }); }); cells.Add (headerCell); }
public void SetBeerInfo (BeerInfo item) { beerInfo = item; }