V systéme iOS 7 majú niektoré tabuľky tabuľky mojej aplikácievyblednutie a vyblednutie v animácii na vybranej bunke pri použití zadného gesta navigačného ovládača (presunutím z ľavého okraja pohľadu doprava a doľava môžete vidieť zmenu farby pozadia bunky).
Niektoré zo zobrazenia tabuľky ale túto animáciu nemajú a nevyberú vybratú bunku pri rýchlom pretiahnutí zobrazenia, ale môžu zrušiť výber bunky pri pomalom pretiahnutí zobrazenia.
odpovede:
1 pre odpoveď č. 1Mám rovnaký problém. Zdá sa, že kód, ktorý spomeniete, je možné zjednodušiť tak, že nebude možné ani skontrolovať, či existuje aktuálny vybratý riadok:
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];
}
Všimol som si však, že ani nastavenie animovaného na ÁNO neposkytuje rovnakú animáciu gestom posunutia dozadu ako pri stlačení tlačidla späť.
Vidím, že JosephH v tejto otázke uvádza:
Nové gesto posunutia systému ios7 na návrat v navigačnom zásobníku nevymaže výber zobrazenia tabuľky
že niektoré z týchto zadných závad sa môžu opravovať (v 7.04), ale stále vidím problém a beží mi 7.04. Dúfajme, že v 7.1?
Atribút "Jasný vzhľad" vUITableViewController má vyčistiť predtým vybranú bunku pri prechode späť na TableView, ale zjavne sa to nestane, keď sa gesto posunutia urobí rýchlo.
0 pre odpoveď č. 2
Vlastne to funguje! Jednoducho to vyskúšam, pri pretiahnutí môže získať animáciu.
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
NSIndexPath *selectedRowIndexPath = [self.tableView indexPathForSelectedRow];
if (selectedRowIndexPath) {
[self.tableView deselectRowAtIndexPath:selectedRowIndexPath animated:YES];
}
}
Ale stále neviem, prečo sa táto otázka stala v prípade nejakého tabuľkového zobrazenia, vyzerá to pre mňa tak, že tabuľkové zobrazenie vytvorené po systéme iOS 7 je v poriadku a staré predtým vytvorené tabuľkové zobrazenie má túto otázku.