【问题标题】:My NSString object is not being updated until I leave my main viewController and go back?在我离开主视图控制器并返回之前,我的 NSString 对象不会被更新?
【发布时间】:2014-07-10 00:34:05
【问题描述】:

在过去的几个小时里,我一直试图弄清楚这一点,但仍然无法弄清楚或找到任何可能对我有帮助的相关内容。

我有一个方法showFriendRequestData,该方法调用服务器以获取 JSON 响应。我将取回的数据存储到NSMutableArray 中。我比创建一个 NSString 对象并将数组中的项目总数存储到一个字符串值。

然后我将值添加到 UILabel 对象并尝试显示它。我曾尝试在我的viewDidAppear 方法中调用此方法showFriendRequestData,如下所示。

-(void)viewDidAppear:(BOOL)animated{
    [self showFriendRequestData];
}

但只有当我离开 mainViewController 并返回时,标签才会更新.....没有意义。我在错误的地方调用这个方法吗?任何帮助或指导都会很棒。我希望标签在我登录主视图控制器时更新。

【问题讨论】:

  • 在不知道 showFriendRequestData 做什么的情况下,我们应该如何帮助您?
  • 哪个 NSString?它与 UI 有什么关系?
  • 搞定了,感谢 gothic dev!我刚刚为 ViewWillAppear 添加了相同的东西,它就像我想要的那样工作。 @rdelmar 我很抱歉没有提供有关该方法的更多信息,它只是有一些我不想透露的服务器内容。
  • 缩短、编辑和重命名该帖子,以便问题和响应匹配。

标签: ios objective-c json nsmutablearray viewdidappear


【解决方案1】:

你必须调用[super viewDidAppear:animated];

-(void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    [self showFriendRequestData];
}

设置数据太晚了?

-(void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    // ...
}

有关完整说明,请参阅 guidelines-for-viewwillappear-viewdidappear-viewwilldisappear-viewdiddisappear

【讨论】:

  • 我试过了,它仍然没有工作,但在为 viewWillAppear 做了同样的事情之后它工作了,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-08-09
  • 1970-01-01
  • 1970-01-01
  • 2018-03-08
  • 2016-11-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多