iCulture forum | iPhone, iPad,  iPod touch, Apple TV en iOS

iCulture forum | iPhone, iPad, iPod touch, Apple TV en iOS (https://forum.iculture.nl/)
-   Ontwikkelen voor iOS (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/)
-   -   UITableView ---> DetailView (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/82881-uitableview-detailview.html)

gobelz 20-01-11 21:50

UITableView ---> DetailView
 
Beste mensen,

Ik heb een vraag waar ik al een tijdje mee rond loop. Ik kom er niet helemaal uit.

Ik wil in een UITableView informatie tonen voor de gebruiker.
Voorbeeld:
Code:

NSArray *mDag = [NSArray arrayWithObjects:@"Maandag", @"Dinsdag", @"Woensdag", nil];
NSDictionary *mDagDict = [NSDictionary dictionaryWithObject:mDag forKey:@"Tijden"];
       
NSArray *mMaand = [NSArray arrayWithObjects:@"Januari", @"Februari", @"Maart", @"April", nil];
NSDictionary *mMaandDict = [NSDictionary dictionaryWithObject:mMaand forKey:@"Tijden"];

Dit lukt goed door middel van een Array met objecten.

Nu het volgende, ik wil graag een DetailView er aan hangen met informatie dat extra uitleg moet geven aan het onderdeel wat geselecteerd wordt door de gebruiker. Dus niet van "U heeft Maandag geselecteerd", maar met een titel "maandag" en een beschrijving "Maandag is de eerste werkdag" en voor de andere items in UITableView een heel ander omschrijving wordt gegeven. Ik loop totaal vast op het tonen van een beschrijving per onderdeel. Ik heb in literatuur gekeken en ook op het net, het is mij helaas niet gelukt.

Een hint om verder te komen waar ik mee vast ben komen te staan is al een grote stap voor mij!

Alvast bedankt.

Geno 20-01-11 23:53

Waar komt de informatie vandaan die in de detailview wordt getoond? Dat is niet duidelijk.

Je moet bij een UITableView erachter komen welke cell er wordt gedrukt door de gebruiker. Je kan bv. de delegate method didSelectRowAtIndexPath: gebruiken om te achterhalen welke cell er wordt aangesproken (met de juiste indexpath).
Aan de hand daarvan presenteer je de juiste data.

wubbe 21-01-11 08:43

Navigating a Data Hierarchy With Table Views

gobelz 28-01-11 21:59

Thank you!

Chrizzz 28-01-11 23:21

Als je in de tabel een cell selecteert wordt inderdaad de method "didSelectRowAtIndexPath:" aangeroepen. Binnen die method maak je een instance van je detailview aan. Die detailview moet de door jouw gewenste "properties" hebben. Want dan kun je nu in de "didSelectRowAtIndexPath:" de properties alvast invullen en doorgeven aan de detailview. Bijvoorbeeld: detailview.weekdag = [mDag objectAtIndex:indePath].

Grappig is dat Apple in hun template al bijna de hele methode voor je uitschrijven. Je hoeft alleen je eigen properties in te vulllen.

Citaat:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
// Navigation logic may go here -- for example, create and push another view controller.
/*
<#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
NSManagedObject *selectedObject = [[self fetchedResultsController] objectAtIndexPath:indexPath];
// ...
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
*/

}


Alle tijden zijn GMT +2. Het is nu 07:16.