iOS Lignes de séparation


Exemple

Modification de la largeur des lignes de séparation

Vous pouvez définir que les lignes de séparation de votre vue de tableau étendent les différentes largeurs sur la table en modifiant la propriété layoutMargins: de vos cellules. Cela peut être réalisé de plusieurs manières.

Modification des lignes de séparation pour des cellules spécifiques

Dans la méthode willDisplayCell: votre source de données de cellForRowAtIndexPath: , ou dans la méthode willDisplayCell: définissez la propriété layoutMargins: la cellule sur UIEdgeInsetsZero (s'étend sur toute la largeur de la table) ou sur tout ce que vous pouvez souhaiter ici.

Objectif c

[cell setLayoutMargins:UIEdgeInsetsZero];

// May also use separatorInset
[cell setSeparatorInset:UIEdgeInsetsZero];

Rapide

func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { 
    cell.separatorInset = UIEdgeInsetsZero
    cell.layoutMargins = UIEdgeInsetsZero
}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
    cell.separatorInset = UIEdgeInsetsZero
    cell.layoutMargins = UIEdgeInsetsZero
}

Supprimer toutes les lignes de séparation

Les fines lignes grises entre chaque cellule peuvent ne pas correspondre exactement à ce que vous recherchez. Il est assez simple de les cacher de la vue.

Dans votre englobant UIViewController de viewDidLoad: méthode ajoutez le code suivant. Vous pouvez également définir cette propriété à tout moment avant de charger ou de recharger la vue de table (il n'est pas nécessaire que la méthode viewDidLoad: utilisée).

Rapide:

 tableView.separatorStyle = .None

Objectif c:

tableView.separatorStyle = UITableViewCellSeparatorStyleNone;

Vous pouvez également modifier la propriété dans votre Storyboard ou XIB en sélectionnant votre tableView et en définissant le separator (sous l'inspecteur d'attributs) sur None .

Masquer les lignes de séparation en excès

Vous pouvez masquer les lignes de séparation UITableViewCell pour les cellules vides en définissant une vue de pied de page vide au bas d'un UITableView:

Rapide

tableView.tableFooterView = UIView()

Objectif c

tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];

Deux UITableViews côte à côte. Le côté gauche de l'image montre les cellules vides avec un séparateur, le côté droit de l'image montrant les cellules sans séparateur.

L'image est de Ray Wenderlich .