Domanda

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

in questo metodo

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

ma posso vederlo solo quando seleziono quella cella altrimenti non è visibile e funziona perfettamente quando lo sfondo è bianco. Sono sicuro di dover impostare una proprietà, ma non so quale proprietà devo modificare per far funzionare questa cosa.

grazie in anticipo.

applausi.

È stato utile?

Soluzione

Sembrerebbe che l'indicatore di rivelazione sia un'immagine grigia alfa alta, così sovrapposta che su uno sfondo nero la rende invisibile. Se vuoi farlo, dovrai aggiungere il tuo UIImageView al contentView della cella.

Altri suggerimenti

Ho riscontrato questo stesso problema e ho appena creato un UIImageView da un UWiew's imageWithName @ & Acc; Disclosure.png " usando la seguente grafica affrettata che sei libero di copiare: http://thinkingman.com /db/downloads/AccDisclosure.png (se fai semplicemente clic su quel link, probabilmente non vedrai nulla, poiché è un'immagine bianca con uno sfondo trasparente, ma se la salvi e la visualizzi su uno sfondo scuro, tu vedremo l'alfa).

Il seguente codice mi consente di impostare il colore di sfondo della punta della freccia in una riga della tabella:

@property (nonatomic,retain) UILabel *backgroundLabel;

UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero];
label.backgroundColor = [UIColor orangeColor]; 
self.backgroundLabel = label;
[self.contentView addSubview:label];
[label release];

CGRect labelRect = CGRectOffset(contentRect,0, 0);
labelRect.size.height = contentRect.size.height - 1; // show white line
labelRect.size.width = contentRect.size.width + 50; // cover arrow tip background
backgroundLabel.frame = labelRect;    
backgroundLabel.highlightedTextColor = [UIColor whiteColor];

Ho creato una soluzione in cui ho aggiunto un ImageView con addSubView in modo normale, con un'immagine che non era nera (nel mio caso, un cerchio pieno di grigio) nella posizione in cui appare l'accessorio.

Ciò consente di vedere la freccia e di avere ancora un colore di sfondo per la cella della tabella scuro / nero.

Forse non è la soluzione più kosher, ma rende visibile la freccia e ricevo una notifica dei clic sugli accessori senza sottoclassare o scrivere molto codice.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top