Selon this question (et beaucoup de nombreux résultats de recherche Google), lorsque nous sommes dans une vue de table, et nous avons défini les cellules pour avoir UITableViewCellStyleSubtitle
, nous avons été obligés d'aligner nos textes à l'intérieur de l'étiquette de la cellule pour être sur la gauche.Une solution de contournement pour centrer textAlignment dans UITableViewCellStyleSubtitle
Cependant, je veux une des lignes (en fait la ligne) de mon point de vue de la table pour être aligné centre ... Il est évident que cela ne fonctionnerait pas:
cell.textLabel.textAlignment = UITextAlignmentCenter;
J'ai pensé ce que je devrait faire plutôt ... Je ne suis pas sûr de savoir comment le faire proprement. La meilleure façon dont je peux penser est de changer cette cellule particulière de sorte que le style de la cellule est UITableViewCellStyleDefault
, mais je ne pense pas que la propriété de la cellule est modifiable. Une autre façon que je peux penser est de sous-classer la classe UITableViewCell
, mais cela semble être un peu exagéré juste pour une cellule de table. Que pensez-vous que je devrais faire pour aligner cette dernière rangée?
EDIT: pour ceux d'entre vous qui sont intéressés par la réponse:
static NSString *CellIdentifier = @"Cell";
static NSString *CellIdentifierDefault = @"CellDefault";
UITableViewCell *cell; // = [pTableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (indexPath.row >= [data count])
cell = [pTableView dequeueReusableCellWithIdentifier:CellIdentifierDefault];
else
cell = [pTableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil && indexPath.row < [data count]) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}
else if(cell == nil && indexPath.row >= [data count]) {
//Use default style for the last cell.
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifierDefault] autorelease];
}
Je pense que vous devriez simplement faire la dernière cellule 'UITableViewCellStyleDefault'.C'est beaucoup plus facile que tout ce que vous avez mentionné ci-dessus. – Robin
Mais j'ai besoin des sous-titres ... Comment afficher text.detailTextLabel si j'utilise le style par défaut? –
vous devez le faire seulement pour la dernière rangée pas pour les autres rangées. (Comme vous l'avez demandé dans votre question.) – Robin