我对此非常陌生,我正在尝试通过为自己创建一些小应用程序来学习。 我有一个基于导航的应用程序,用户点击该行以选择电影标题 - 然后我希望第二个视图显示电影的详细信息。
感谢一位非常乐于助人的人,我将按行的结果显示为'rowTitle',如下所示:
(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *key = [keys objectAtIndex:indexPath.section];
NSArray *nameSection = [names objectForKey:key];
NSString *rowTitle = [nameSection objectAtIndex:indexPath.row];
NSLog(@"rowTitle = %@", rowTitle);
[tableView deselectRowAtIndexPath:indexPath animated:YES];
然而,我正在努力使'rowTitle'的数据可用于第二个视图 -
基本上,如果我可以获取信息 - 例如rowTitle是“aliens2” - 我希望能够在'rowTitle'返回的字符串末尾添加新的扩展名以指向图像(如果这在第二种观点中是有意义的......
像
这样的东西 tempImageName=[** this is where the info from rowTitle needs to be I suppose**];
tempImageType=@".png";
finalImageName=[tempImageName stringByAppendingString:tempImageType];
这对任何人都有意义吗(道歉,如果它没有 - 我知道我想要什么,但如何解释它有点尴尬!)
答案 0 :(得分:0)
如果您确实需要,请使用stringByAppendingPathExtension
添加png扩展名。但这取决于你将要用它做什么;你可能不需要完整的文件名只是一个文件,例如 - pathForResource:ofType:可以将扩展名作为类型参数(但是imageNamed:喜欢完整的文件名)。
您应该在第二个视图控制器中为图像名称添加一个属性,然后在select方法中创建并推送/显示视图控制器。
MyViewController *vc = [[MyViewController alloc] init];
vc.imageName = tempImageName;
[self.navigationController pushViewController:vc animated:YES];
[vc release];