Est-il possible de sélectionner une ligne dans un précédent UITableview. J'ai fourni des échantillons d'image pour obtenir une image plus claire de ce qui se passe exactement.Est-il possible de sélectionner une ligne dans un ** previous ** UITableview
http://img186.imageshack.us/img186/933/picture8a.png
http://img405.imageshack.us/img405/9327/picture9d.png
http://img200.imageshack.us/img200/5386/picture10thm.png
À l'écran de séance d'entraînement du matin, on peut sélectionner une ligne et derrière il va jouer un film. Si le film est joué, vous pouvez appuyer sur le second bouton et il vous amènera à la table finale. Si vous appuyez sur le bouton Back, vous revenez simplement à l'écran précédent.
Maintenant, voici où se situe mon problème. Si je suis dans mon dernier écran après avoir appuyé sur la deuxième touche et que j'appuie sur le bouton arrière, ce serait bien si elle pouvait lire la vidéo précédente (en d'autres termes, la vidéo connectée à la cellule précédemment sélectionnée)
Donc si c'est possible pour moi de créer une fonction ou une sorte d'action qui peut effectivement sélectionner la ligne précédemment sélectionnée dans le premier champ (par exemple Lunge Forward dans cet exemple). peut-être avec quelques-uns comme
previousRow = [ self.tableView indexPathForSelectedRow];
[self tableView:[self tableView] didSelectRowAtIndexPath:previousRow];
juste faire quelque chose
Même si ce n'est pas possible, je vous serais reconnaissant si quelqu'un me le faire savoir.
modifier: Voici un code derrière la cellule quand il va jouer une vidéo
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//Get the dictionary of the selected data source.
NSDictionary *dictionary = [self.tableDataSource objectAtIndex:indexPath.row];
//check to see if video must be played
NSString *playVids = [dictionary objectForKey:@"playVids"];
finalscreen = [dictionary objectForKey:@"finalScreen"];
if(playVids == nil)
{
if(CurrentLevel != 0)
{
if(finalscreen == nil)
{
NSString *movies = [dictionary objectForKey:@"movieID"];
NSURL *movie = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:movies ofType:@"m4v"]];
theMovie = [[MPMoviePlayerController alloc] initWithContentURL:movie];
[theMovie setOrientation:UIDeviceOrientationPortrait animated:NO];
[theMovie setScalingMode:MPMovieScalingModeAspectFit];
theMovie.backgroundColor = [ UIColor whiteColor];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(myMovieFinishedCallback:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:theMovie];
[theMovie play];
[self getToolBarStuff];
lblTitle.text = [dictionary objectForKey:@"Title"];
[[[UIApplication sharedApplication]keyWindow]addSubview:toolbar2];
[[[UIApplication sharedApplication]keyWindow]addSubview:imageView];
[[UIApplication sharedApplication]keyWindow]addSubview:lblTitle];
}
}
else
{
WebViewController *web = [[WebViewController alloc] initWithNibName:@"WebView" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:web animated:YES];
[web release];
}
}
else {
//Prepare to tableview.
rvController = [[RootViewController alloc] initWithNibName:@"RootViewController" bundle:[NSBundle mainBundle]];
//Increment the Current View
rvController.CurrentLevel += 1;
//Set the title;
rvController.CurrentTitle = [dictionary objectForKey:@"Title"];
//Push the new table view on the stack
[self.navigationController pushViewController:rvController animated:YES];
rvController.tableDataSource = Children;
[rvController release];
}
}
Je reçois mes informations/feeds d'un dictionaryfile et aussi différentes balises dans mon dictionnaire dire à mon tableview quand pour lire la vidéo et quand pas (playVids).
pour être exact J'ai un écran de démarrage qui vous amène à un deuxième écran et celui-ci vous amène à l'écran d'entraînement du matin et à partir de là, si vous cliquez sur une cellule, une vidéo (différente avec chaque cellule). Je ne peux pas utiliser le design standard d'Apple (avec le bouton de retour ci-dessus) puisque cette tâche demande spécifiquement d'utiliser leur propre design. C'est la raison pour laquelle j'ai créé mes propres onglets et boutons de retour.
Mon backbutton ressemble à ceci
-(void)back_clicked:(id)sender
{
[self.navigationController popViewControllerAnimated:YES];
CurrentLevel--;
switch(CurrentLevel) {
case 0;
[toolbar removeFromSuperView];
default:
break;
}
}
Donc, si je suis dans le dernier écran je pop juste que l'écran pour revenir à mon précédent (la séance d'entraînement du matin). Et ce qui doit être fait, c'est d'afficher cet écran et de lire la dernière vidéo. J'ai pensé que je pourrais faire cela en ouvrant le dernier écran, puis en sélectionnant la cellule précédemment cliquée dans la séance d'entraînement du matin.
Toute réflexion à ce sujet.
je vous remercie beaucoup pour votre réponse. En effet, j'ai plus d'un contrôleur. Cependant, ceux-ci ne s'appliquent pas vraiment ici. J'utilise une sorte de drilldowntable comme celle-ci. http://www.iphonesdkarticles.com/2009/03/drill-down-table-view-with-detail-view.html. Donc j'utilise un contrôleur pour contrôler les vues de table. Et il y a aussi un contrôleur différent pour ma superposition avec la vidéo (le titre et le bottombar). Je vais éditer ma question et ajouter du code pour être plus précis. Parce que dans cette boîte de commentaire c'est une douleur à lire je suppose;). –