public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath) { var list = RewardList; RewardItemModel reward = list != null ? list[indexPath.Row] : null; UITableViewCell cell; if (reward.Type == "REWARD") { cell = tableView.DequeueReusableCell(AvailableRewardsTableCell.ClassName); IRewardTableCell rewardCell = cell as IRewardTableCell; if (rewardCell != null) { rewardCell.UpdateCellData(reward, -10, RewardStatus.Aviable, false); } } else { cell = tableView.DequeueReusableCell(RewardCategoryTableViewCell.ClassName); RewardCategoryTableViewCell rewardCell = cell as RewardCategoryTableViewCell; if (rewardCell != null) { rewardCell.UpdateCellData(reward); } } return(cell); }
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath) { var list = RewardList; RewardItemModel reward = list != null ? list[indexPath.Row] : null; UITableViewCell cell; if (reward != null && reward.Type == "REWARD") { cell = tableView.DequeueReusableCell(RewardsTableViewCell.ClassName); RewardsTableViewCell rewardCell = cell as RewardsTableViewCell; cell.Frame = new CoreGraphics.CGRect(cell.Frame.X, cell.Frame.Y, tableView.Frame.Width, cell.Frame.Height); cell.UpdateConstraintsIfNeeded(); if (rewardCell != null) { int itemIndex = list.IndexOf(reward); nfloat rewardLittleOffset = UIScreen.MainScreen.Bounds.Width / 100 * 2.17f; nfloat rewardBigOffset = UIScreen.MainScreen.Bounds.Width / 100 * 7.73f; bool noPoints = reward.MinScore > SL.Profile.Score; bool locked = (reward.AutoUnlockDate?.ToLocalTime() ?? DateTime.Now) > DateTime.Now; rewardCell.PrepareForReuse(); if (noPoints && locked) { rewardCell.UpdateCellData(reward, rewardLittleOffset, false); } else if (noPoints && !locked) { rewardCell.UpdateCellData(reward, rewardBigOffset, false); } else if (!noPoints && locked) { rewardCell.UpdateCellData(reward, -rewardBigOffset, true); } else if (!noPoints && !locked)//Available { rewardCell.UpdateCellData(reward, -rewardLittleOffset, true); } } } else { cell = tableView.DequeueReusableCell(RewardCategoryTableViewCell.ClassName); RewardCategoryTableViewCell rewardCell = cell as RewardCategoryTableViewCell; rewardCell.SelectionStyle = UITableViewCellSelectionStyle.None; if (reward != null && rewardCell != null) { rewardCell.UpdateCellData(reward); } } return(cell); }