我有一个非常简单但令人沮丧的问题。在我的didSelectRowAtIndexPath:
方法中,我试图在另一个视图上更改UIImageView
,但不幸的是,它不起作用,并且UIImageView
保持不变。如何在另一个视图控制器中更改UIImageView的图像?
我在做什么错?
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
MainViewController *demoController = [[MainViewController alloc] initWithNibName:@"MainViewController" bundle:nil];
demoController.title = [NSString stringWithFormat:@"Demo Controller #%d-%d", indexPath.section, indexPath.row];
NSArray *controllers = [NSArray arrayWithObject:demoController];
self.sideMenu.navigationController.viewControllers = controllers;
[self.sideMenu setMenuState:MFSideMenuStateClosed];
if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"server"] isEqualToString:@"imap.mail.me.com"]){
if (indexPath.row == 0)
theAppDelegate.folder = @"INBOX";
UIImage *image = [UIImage imageNamed:@"inbox.png"];
demoController.imageBG.image = image;
if (indexPath.row == 1)
theAppDelegate.folder = @"Sent Messages";
UIImage *image2 = [UIImage imageNamed:@"sentmail.png"];
demoController.imageBG.image = image2;
if (indexPath.row == 2)
theAppDelegate.folder = @"Drafts";
UIImage *image3 = [UIImage imageNamed:@"drafts.png"];
demoController.imageBG.image = image3;
if (indexPath.row == 3)
theAppDelegate.folder = @"Deleted Messages";
UIImage *image4 = [UIImage imageNamed:@"trash.png"];
demoController.imageBG.image = image4;
if (indexPath.row == 4)
theAppDelegate.folder = @"Archive";
UIImage *image5 = [UIImage imageNamed:@"archive.png"];
demoController.imageBG.image = image5;
if (indexPath.row == 5)
theAppDelegate.folder = @"Junk";
UIImage *image6 = [UIImage imageNamed:@"junk.png"];
demoController.imageBG.image = image6;
}
}
我已经添加了{},但它仍然没有改变。甚至在之前,我甚至没有得到“junk.png”。 –
把断点放到这一行if([[[[[NSUserDefaults standardUserDefaults] objectForKey:@“server”] isEqualToString:@“imap.mail.me.com”])',检查这一行是否为真或假.. – Mani
我知道这是真的,否则文件夹不会改变,他们会这样做。 –