【问题标题】:The value arrive after my viewWillAppear: called I need the value before值在我的 viewWillAppear 之后到达:调用我需要之前的值
【发布时间】:2017-06-16 16:21:59
【问题描述】:

在我的 A 类中,当我打开应用程序时,它会调用 viewWillAppear: 并且在我的 viewWillAppear: 内有一个 if 语句。问题是 Support_three_ways_call 是一个布尔值,它直接从服务器接收值,当 viewWillAppear 在 6 秒后完成时,实际值从服务器到达,我试图找到一种方法或在 6 秒后刷新我的视图真正的价值,我不知道该怎么做,我想问一下是否有几秒钟后刷新视图或从另一个类调用相同的视图以使其消失或出现。我试图在 6 秒后从另一个类调用我的 viewWillAppear,但问题是,它调用了该函数但它不起作用。

任何帮助表示感谢。

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





    if (Support_three_ways_call){
        keypadEditorView.threewaysbutton.hidden = NO;

    } else {

        keypadEditorView.threewaysbutton.hidden = YES;
    }

}

【问题讨论】:

  • "6 秒后实际值从服务器到达"在哪里?获取价值的代码是什么?
  • 嗨@Larme,Support_three_ways_call 是一个从服务器作为XML 到达的布尔值,因为代码很重,我只写了我有问题的部分,我没有值问题。跨度>
  • 如何获得服务器价值?在什么班?您是否使用闭包来告诉您的视图控制器?一个 NSNotification ?不要自称viewWillAppear:。
  • 我从 B 类中获取值,然后使用全局变量将值传递给 A 类以隐藏或不隐藏按钮。

标签: objective-c viewwillappear viewdidappear


【解决方案1】:

第 1 步:将 supportsThreeWayCalls 声明的属性添加到 A。

第 2 步:将自定义设置器 -supportsThreeWayCalls: 写入实现。

第 3 步:在自定义设置器中设置按钮的隐藏属性。

第 4 步:从 $whereyourreceivetheresponse 设置此属性。

【讨论】:

    猜你喜欢
    • 2011-09-14
    • 1970-01-01
    • 2011-10-12
    • 1970-01-01
    • 2011-11-24
    • 2013-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多