我在选择合适的消耗品时遇到问题,这些消耗品已在 iTunes Connect 中设置以显示在我的表格中的 nib 文件中。(使用 Ray Wenderlich 的教程)
我设置了 11 种消耗品,它们分为两组;硬币和类别。
我想要做的是有两个按钮,每个按钮将用户带到不同的桌子。根据表格显示不同的集合。
我已经尝试了几个小时才能让它发挥作用,但我做不到;所以我向 StackOverflow 社区的力量低头提供帮助。
目前我的设置如下:
NSSet * productIdentifiers = [NSSet setWithObjects:
@"com.ac.scramble.coins1",
@"com.ac.scramble.coins2",
@"com.ac.scramble.coins3",
@"com.ac.scramble.coins4",
@"com.ac.scramble.coins5",
@"com.ac.scramble.category1",
@"com.ac.scramble.category3",
@"com.ac.scramble.category5",
@"com.ac.scramble.category8",
@"com.ac.scramble.category15",
@"com.ac.scramble.category30",
nil];
sharedInstance = [[self alloc] initWithProductIdentifiers:productIdentifiers
这是通过 iTunes Connect 设置的,没有问题。
这里明显的问题是,在我想要显示 6 行的第一个笔尖中,它显示了上面列表中的最后六个(不确定为什么最后六个而不是前六个......)。这很好,但是在想要显示 5 行的第二个 nib 中,它显示了上面列表中的最后五个。我不希望这样 - 我希望它显示前五名(硬币)。
我尝试将 NSSet 分成两部分并通过,但我无法让它工作。我不知道我是否可以在代码中的某处指定我想要显示的集合的哪些行。可能是我需要做一些诡计的相关代码(我相信)是:
- (void)reload {
_products = nil;
[self.table2 reloadData];
[[RageIAPHelper sharedInstance] requestProductsWithCompletionHandler:^(BOOL success, NSArray *products) {
if (success) {
_products = products;
[self.table2 reloadData];
}
//[self.refreshControl endRefreshing];
}];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"SimpleTableCell";
SimpleTableCell *cell = (SimpleTableCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil)
{
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"SimpleTableCell" owner:self options:nil];
cell = [nib objectAtIndex:0];
}
SKProduct *product = (SKProduct *) _products[indexPath.row];
cell.nameLabel.text = product.localizedTitle;
NSLog(@"Localized title: %@", product.localizedTitle);
cell.thumbnailImageView.image = [UIImage imageNamed:[thumbnails3 objectAtIndex:indexPath.row]];
cell.descriptionLabel.text = [descriptions3 objectAtIndex:indexPath.row];
[_priceFormatter setLocale:product.priceLocale];
//cell.detailTextLabel.text = [_priceFormatter stringFromNumber:product.price];
cell.progressLabel.text = [_priceFormatter stringFromNumber:product.price];
cell.descriptionLabel.text = product.localizedDescription;
}
提前感谢大家。