2010-07-20 2 views
1

tous. J'ai parcouru Internet, et je n'ai pas trouvé de réponse concluante à cela. Si vous regardez l'App Store iPad (un certain nombre d'autres applications), l'onglet Catégories a (à quoi ressemble) une vue de table en 2 colonnes.Voir une fiche similaire à iPad App Store?

Une solution que j'ai lue en utilisant une vue web (que je n'ai pas encore exploré en profondeur).

J'ai essayé d'utiliser des sous-vues dans une cellule de tableau. Je peux imiter une disposition à 2 colonnes, mais je n'arrive pas à faire fonctionner correctement les événements tactiles. Avant d'essayer de continuer sur cette voie, je voulais savoir si ce sont des solutions viables ou s'il y a d'autres options.

Si Apple l'utilise dans l'App Store, je pense qu'il doit y avoir un moyen de le faire dès le départ. Toute aide est appréciée!

Répondre

0

C'est vraiment simple. Ouvrez votre fichier .xib et créez 2 (ou autant que vous voulez) UITableView. Ajouter IBOutlets pour chacun d'entre eux en définissant

IBOutlet UITableView *table1; 
IBOutlet UITableView *table2; 

crochet ceux dans le constructeur d'interface à chacun de vos tables, maintenant dans chaque table assigner le délégué et dataSource pour pointer vers votre vue contrôleur.

Maintenant, vous devez mettre en œuvre les fonctions de uitableview de base comme:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath; 

maintenant à l'intérieur de ces méthodes, vous pouvez savoir que l'on est demandé par vérifier la valeur tableView avec vos références IBOutlet. Comme:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 
    if(tableView == table1){ 
    return 10; 
    } else { 
    return 5; 
    } 
} 

Vous pouvez obtenir la fantaisie et de créer différentes classes pour gérer les délégués d'une manière différente ou avoir un meilleur modèle, mais cela est une bonne façon de commencer = D

+0

vous le savez, je me souviens avoir vu ça, mais quand je l'ai vu au début, ça m'a paru trop compliqué. Mais cela semble fonctionner parfaitement. Mon seul petit problème est qu'il n'y a pas de frontière entre les tables, mais c'est mineur. Quoi qu'il en soit, si quelqu'un se demande, j'ai juste coincé 2 vues de la table dans une vue défilement, désactivé le défilement des tables, et ajusté la hauteur pour s'adapter à toutes les lignes. jusqu'à présent, travaillant comme un charme. merci! – user397350