在当前视图控制器中调用NSDictionary

时间:2011-03-10 09:34:45

标签: iphone

我有一个函数,我从其他视图控制器中定义的字典中调用值。我必须在当前视图控制器的视图didload方法中调用此方法。

这是我的代码:

-(void)setData:(NSDictionary *)dic {

self.jsonLabel.text = [dic objectForKey:@"Description"];
self.jsonImage.image = [UIImage imageWithData: [NSData dataWithContentsOfURL: [NSURL URLWithString: [dic objectForKey:@"PictureURL"]]]];}

3 个答案:

答案 0 :(得分:0)

如果viewControllerObject是定义此函数的视图控制器的必要对象,则分配对象并像这样调用

- (void)viewDidLoad {

[viewControllerObject setData:urDict];

}

答案 1 :(得分:0)

我在otherviewcontroller中使用此代码

并尝试在currentViewController中检索

(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

 {
JSONViewController *controller = [[JSONViewController alloc] initWithNibName:@"JSONView" bundle:nil];
EmpDictionary=[[NSMutableDictionary alloc]init];
[EmpDictionary setValue:aBook.Description forKey:@"Description"];
[EmpDictionary setValue:aBook.PictureURL forKey:@"PictureURL"];
[EmpDictionary setValue:aBook.WeatherID forKey:@"WeatherID"];
EmpArray=[[NSMutableArray alloc]init];
[EmpArray addObject:EmpDictionary];
NSDictionary *itemAtIndex = [self.EmpArray objectAtIndex:indexPath.row];
[self.navigationController pushViewController:controller animated:YES];
[controller setData:itemAtIndex];}

答案 2 :(得分:0)

试试这个

NSURL *jsonURL = [NSURL URLWithString:[jsonItem objectForKey:@"PictureURL"]];

<强>更新

请参阅第{4}} alloc方法中的第二个View控制器分配字典。 然后,您可以将第一个视图控制器中的字典作为

传递
init

然后按下第二个视图控制器。检查secondViewController.dict = self.dict; 中字典的值然后,如果字典可用,则可以继续。

viewDidLoad: