Refresh della Uitableview e della navigation bar

di il
1 risposte

Refresh della Uitableview e della navigation bar

Ciao, vorrei cambiare i colori della app al clic su un pulsante in ZRK_ListViewController
così quando clicco su questo pulsante c'è questo codice che mi reinizializza il controller e cambia toolbar e pulsanti vari, ma forse non è corretto riinizializzare un controller in questo modo in objective-c, cmq funziona
-(void)changestyle
{
    
    change=true;
    [self initWithNibName:nil bundle:nil];
    
}

ho bisogno anche per aggiornare la UITableView è in ZRK_PaginationView
con il metodo - (void) changestyle in ZRK_ListViewController

per cambiare il colore di sfondo della cella

non so come scrivere [tableView reloadData];
se faccio cosi [[ZRK_PaginationView tableView]reloadData];
mi dice unknown class method for selector tableview
ed anche se faccio cosi
[[ZRK_PaginationView _tableView]reloadData];
questo è l'interfaccia di ZRK_PaginationView
     interface ZRK_PaginationView : UIView<UITableViewDataSource,UITableViewDelegate>
    {
    UITableView *_tableView;
    }
il terzo colore di sfondo da cambiare è la barra di navigazione che è impostato su AppDelegate con questo codice
if (change==true) {
NSInteger RGB1 = [[[qRGB1 getNavigationBarBG2]objectAtIndex: 0] integerValue];
NSInteger RGB2 = [[[qRGB1 getNavigationBarBG2]objectAtIndex: 1] integerValue];
NSInteger RGB3 = [[[qRGB1 getNavigationBarBG2]objectAtIndex: 2] integerValue];

[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:RGB1/255.0 green:RGB2/255.0 blue:RGB3/255.0 alpha:1.0]];
}else{
NSInteger RGB1 = [[[qRGB1 getNavigationBarBG]objectAtIndex: 0] integerValue];
NSInteger RGB2 = [[[qRGB1 getNavigationBarBG]objectAtIndex: 1] integerValue];
NSInteger RGB3 = [[[qRGB1 getNavigationBarBG]objectAtIndex: 2] integerValue];

[[UINavigationBar appearance] setBarTintColor:[UIColor colorWithRed:RGB1/255.0 green:RGB2/255.0 blue:RGB3/255.0 alpha:1.0]];
}
i colori sono settati in un modo se change è false e in un altro se change è true
ma non so fare il refresh della Uitableview e della navigation bar settata nell'app delegate
come dovrei fare?? grazie dell'aiuto

1 Risposte

  • Re: Refresh della Uitableview e della navigation bar

    Vedo che i post sono un po datati, in ogni caso a chi servisse:
    
    [TableView reloadData];
    
    Nel caso non hai la proprietà come riferimento ma le fai a puntatore come me...
    
    UITableView *_temp = (UITableView*)[self.view viewWithTag:N];
    [_temp reloadData];
    
    Dove N è il numero che hai dato quando hai creato la view.
    In questo modo risparmi memoria e sai come chiamare le view create e rilasciate.
Devi accedere o registrarti per scrivere nel forum
1 risposte