Ajout de la petite flèche sur le côté droit d'une cellule dans une cellule iPhone TableView


Réponses:


317

Il suffit de régler la respective accessoryType propriété de UITableViewCell .

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

Dans Swift 3 ,

cell.accessoryType = .disclosureIndicator

1
Notez que si vous souhaitez faire pivoter la flèche ... vous ne pouvez pas le faire . Vous devez utiliser une image .. stackoverflow.com/questions/13836606/…
Fattie

1
Pour Swift, utilisez simplement cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
Quintin Balsdon

1
cell.accessoryType = .DisclosureIndicatorfonctionne également dans Swift.
Tim Vermeulen

SWIFT 3.0: cell.accessoryType = .disclosureIndicator
Brian

67

Vous pouvez le faire dans Interface Builder. Cliquez simplement sur la vue de la table , allez à Prototype Cells sur le côté droit et faites-le 1. Cliquez ensuite sur cette Prototype Cell et sur la droite recherchez Accessory . Dans la liste déroulante, cliquez sur Indicateur de divulgation .

Exemple d'interface Builder


Je ne vois rien comme "Cellules prototypes" dans mon xCode ... Est-il disponible dans certaines versions de xCode?
Rasto

Je ne trouve pas non plus "Prototype Cells". J'ai utilisé cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; dans une cellule personnalisée.
Arkady

1
hey @rzv pouvez-vous agrandir un peu plus l'image? J'ai oublié mes lunettes
abbood

6

Vous pouvez définir une petite flèche classique dans les deux sens comme ci-dessous

1) Utilisation de la méthode de type accessoire intégrée de UITableViewCell

[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator]; 

2) Créer sa propre vue accessoire avec sa propre image

(I) Faites glisser et déposez une image de flèche (par exemple, circle_arrow_right.png) dans votre projet

(II) Dans la méthode de conception de cellule pour chaque ligne comme ci-dessous

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

Écrivez ci-dessous le code:

if (cell ==nil) {
    cell=[[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier]autorelease];

    //For creating custom accessory view with own image
    UIImageView *accessoryView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 30, 30)];
    [accessoryView setImage:[UIImage imageNamed:@"circle_arrow_right.png"]];
    [cell setAccessoryView:accessoryView];
    [accessoryView release];

    //Your other components on cells
     .............
    .............

 }

[ Remarque: choisissez les images appropriées pour la vue accessoire et ajoutez les cellules souhaitées. Choisissez de petites images pour les vues accessoires pour de meilleures performances.]


3

Utilisez la accessoryTypepropriété de la cellule pour afficher une flèche sur le côté droit. Regarde ça .


3

pour une flèche simple:

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator; 

et pour la flèche détaillée:

cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator;)
MR


2

L'autre façon de procéder consiste à spécifier le UITableViewCellAccessoryDisclosureIndicatormoment où vous créez la cellule. Pour ce faire, vous allouerez probablement init votre cellule dans la méthode de délégation tableViewCellWithReuseIdentifier (puis procédez à la personnalisation et à la configuration de votre cellule).

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellAccessoryDisclosureIndicator reuseIdentifier:identifier];

0

Le meilleur moyen est de sélectionner Disclosure Indicatordans la Accessorysection.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.