2010-04-07 5 views
0

Je souhaite ajouter une sous-vue à la classe UITableCellView. Cependant, aucune des vues fournies dans la classe semble être capable de faire exactement ce que je cherchais.Ajout d'une sous-vue à UITableCellView

Je veux fondamentalement ajouter ma propre vue d'arrière-plan, en remplissant la cellule entière. Cependant, si je remplace le backgroundView, le style de la disposition groupée de la vue de table ne s'affiche plus. Si j'ajoute une sous-vue à backgroundView, la sous-vue n'est pas affichée du tout. Si j'ajoute une sous-vue au contentView, je ne peux pas dessiner derrière l'icône de l'accessoire.

Qu'est-ce qui me manque?

Répondre

1

Fondamentalement, vous ne pouvez pas modifier le backgorund de GroupedTable View. Essayez l'utilisation avec PlainTable.

et ajoutez l'image de votre backgroung (de taille = cellsize) à la méthode cellforRowAtIndex.

+0

Je vais avec cette idée pour l'instant. Pas idéal, mais la solution la plus rapide et la plus propre que j'ai trouvée jusqu'ici. – hanno

1

Vous pouvez jeter un oeil à cet article:

"Easy custom UITableView Drawing"

En particulier:

Premièrement: le UITableView ne se dessiner quoi que ce soit, sauf l'arrière-plan. Pour personnaliser l'arrière-plan d'un UITableView, tout ce que vous devez faire est de définir son backgroundColor à [UIColor clearColor] et vous pouvez dessiner votre propre arrière-plan dans une vue derrière le UITableView.

+0

Ce n'est pas exactement ce que je cherchais. Je veux seulement personnaliser un UITableCellView, pas toute la table. L'article suggère d'utiliser des images de fond personnalisées pour chaque cellule. Cela va être une douleur si je veux soutenir différentes orientations sur les deux iPad/iPhone ... – hanno

0

Ajoutez simplement l'affichage personnalisé dans votre contenu. Définissez un identifiant de réutilisation unique pour cette cellule, configurez-le lorsque vous le créez et ensuite réinitialisez simplement les composants de données (ceci est plus simple si vous créez une classe de contrôleur de cellule personnalisée pour pouvoir suivre toutes les pièces et utiliser setters/getters pour les données).