PaintCodeを使用していくつかの画像をUITableViewCellに追加し、PaintCode画像(UIView
に描画される)が確実に画面に表示されません。UITableViewCell内のUIViewの描画が表示されない
3つの水平スタックビューを含む水平スタックビューがあります。その一部はモデルによって隠されている場合があります。内部スタックビューの1つが潜在的にhidden=YES
に設定されている場合、そのスタックビュー内のUIView
は、ビューが存在し、スタックビューに余裕があっても常に表示されるとは限りません。
それはおそらくあなたを表示する方が簡単です:
あなたはビュー階層インスペクタのスクリーンショットで見ることができるように、そこに部屋が栗色の六角形のために次の4にあるが、それは表示されません。アップ。私がセルを選択すると、セルが強調表示されている間は常に六角形が表示され、新しいビューコントローラをスタックにプッシュしてポップすると、六角形が残ることがあります(下のセルのように)。しかし、テーブルビューの初期ロード時には、ほとんどの場合、六角形は欠落しています。 .hidden
プロパティはUIView
自体に直接アクセスすることはなく、含まれるのはUIStackView
です。これは、ほとんどないよう
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
CardCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CardCustomCell"];
if (cell == nil) {
cell = [[CardCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"CardCustomCell"];
}
[cell cellCard:self.rowArray[indexPath.section][indexPath.row]];
cell.cellButton.hidden = YES;
return cell;
}
- (void)cellCard:(Card *)card {
if ([[BlackListSingleton theBlackList] cardExists:card]) {
[self setBadge:1];
} else if ([[WhiteListSingleton theWhiteList] cardExists:card]) {
[self setBadge:2];
} else {
[self setBadge:0];
}
self.typeLabel.text = [Card stringForCardType:card.cardType];
self.nameLabel.text = card.cardName;
if (card.coinCost) {
self.coinStack.hidden = NO;
self.coinCost.text = card.coinCost;
} else {
self.coinStack.hidden = YES;
}
if (card.potionCost) {
self.potionStack.hidden = NO;
self.potionCost.text = card.potionCost;
} else {
self.potionStack.hidden = YES;
}
if (card.debtCost) {
self.debtStack.hidden = NO;
self.debtCost.text = card.debtCost;
} else {
self.debtStack.hidden = YES;
}
[self cardTypeImage:card.cardType];
}
に乗る方法を知ってみましょうあなたはこれを解決するために管理しましたホキ – Tom
@トム悲しいことに、いいえ(それは私が維持している別のアプリでも頭を養っていました)結局のところ、実際のPNGのコード描画された画像を切り捨てなければならなかったのです – hokiewalrus
私はoこのコメントを投稿してから数時間後にこれを手に入れてください。あなたがまだ興味があるのであれば、私が次のPCにいるときにコードをあなたと共有します。 – Tom