我有一个带有多个单元格(详细信息披露)的TableViewController,每个单元格都与唯一数据相关联(例如标题/细节)。当我单击其中一个单元格时,另一个ViewController被加载(通过pushViewController)并且应该根据单击的单元格显示数据。
简单例如:
TableViewController的每个Cell都与单独的url相关联。当我单击其中一个单元格(详细信息公开)时,包含imageview的下一个ViewController应该打开与单击的单元格的URL对应的图像。
这必须在没有故事板,非ARC
的情况下完成你是怎么做到的?
这就是我在DidSelectRowAtIndex
中写的内容 NSMutableString *URL= [[SubFolderData valueForKey:@"URL"]objectAtIndex:indexPath.row];
NSLog(@"URL %@", URL);
File *FileUrl = [[File alloc]init];
FileUrl.Url = URL;
DocumentManagementAppDelegate *delegate=(DocumentManagementAppDelegate *)[[UIApplication sharedApplication] delegate];
File *FileVC=[[File alloc]initWithNibName:@"File" bundle:nil];
self.FileController=FileVC;
[delegate.navigationController pushViewController:FileController animated:YES];
[FileVC release];
SubFolderData是一个数组,其中包含数据,我只检索正在执行的URL而没有任何问题
然后我创建了第二个ViewController的新实例
在这个“文件”中是第二个具有NSMutableString“Url”的ViewController
答案 0 :(得分:1)
使用您自己的init方法覆盖viewController
的init方法。
例如
-(id) initWithTitle:(NSString *)title
{
[super init];
//your code
//strore the title in your local variable.
return self;
}
并在创建viewController
对象
ViewController *vC = [[ViewController alloc] initWithTitle:@"VC Title"];
答案 1 :(得分:0)
在文件
的.h文件中 @interface File : UIViewController
{
NSString *strUploadVideoURL;
}
@property(nonatomic,retain) NSString *strUploadVideoURL;
@end
在文件的.m文件中
@synthesize strUploadVideoURL;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
self.strUploadVideoURL = [[NSString alloc] init];
}
return self;
}
-(void) dealloc {
[strUploadVideoURL release];
[super dealloc];
}
在主视图的didselectrow方法中
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSMutableString *URL= [[SubFolderData valueForKey:@"URL"]objectAtIndex:indexPath.row];
[self.FileController setStrUploadVideoURL:URL];
//code for push view.....
}