【发布时间】:2014-10-20 15:03:45
【问题描述】:
我目前正在使用 SWRevealController 进行滑出式导航。我遇到的问题是我的标签没有根据后端的更改正确更新。考虑到我在左导航(菜单)视图控制器中的代码,我认为每次菜单滑出时它都会更新新数据:
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
PFUser *currentUser = [PFUser currentUser];
int currency = [[currentUser objectForKey:@"currency"] intValue];
// Adding Image to ImageView
PFFile *image = (PFFile *)[currentUser objectForKey:@"image"];
[image getDataInBackgroundWithBlock:^(NSData *data, NSError *error){
if (error)
{
self.profileImage.image = [UIImage imageNamed:@"imagePlaceHolder"];
}
else
{
UIImage *userImage = [UIImage imageWithData:data];
self.profileImage.image = userImage;
}
}];
self.userCurrency.text = [NSString stringWithFormat:@"%d hBux earned.", currency ];
self.greetingMessage.text = [NSString stringWithFormat:@"Hello, %@!", [currentUser objectForKey:@"username"]];
}
我做错了吗?当然它不能进入 viewDidLoad,因为据我了解,它只在初始化时被调用一次?
【问题讨论】:
-
我不太熟悉 SWRevealViewController 是如何实现的,但是基于纯粹的猜测,我认为它可能使用
addChildViewController作为其侧边菜单,而其行为似乎是@987654323 @只在主VC显示时调用一次,而不是每次菜单滑出时调用。 -
所以你实现了你想要的,你可能想看看
SWRevealViewController委托方法,它告诉你侧边菜单什么时候滑出,然后把这部分代码放在那里。跨度> -
我不太确定它是一个子视图控制器。不过,我将看一下委托方法,看看它显示了什么。至于 viewWillAppear 我在其中放了一个 NSLog ,并且每次单击菜单时都会调用日志语句,所以我知道每次菜单出现时都会调用它,直到我完全关闭应用程序并继续之前不会更新 UI回到它。
标签: ios objective-c parse-platform swrevealviewcontroller