【问题标题】:objective C : refresh a view to display updated values目标 C:刷新视图以显示更新的值
【发布时间】:2012-12-13 13:04:59
【问题描述】:

我有一个回调函数,它会在某个事件发生并更新一个文本字段。我使用 viewcontroller 类的实例 varViewController 从 C 代码访问文本字段,因为我无法使用 self 访问文本字段和其他成员/出口。

现在的问题是,当我更新文本字段时,它不会立即更新。在我按下任何其他按钮或对视图执行某些操作后,我会看到更新的值。

void abc(int a, char *b, char *c){

    current = a;

    if (varViewController == NULL)
        NSLog(@"\varViewController is empty");
    else
        NSLog(@"\varViewController");


    varViewController.tempAddress = @"GotSomething";

    [varViewController txtCallId ].text=@"CALLING CALLING";

}  

我的问题是:
第一:为什么值在更改时没有更新?

第二:如何使值一更改就显示出来??(在c函数中更改了值)。

【问题讨论】:

  • 您需要刷新视图。您可以使用委托或通知来发送您已更新的内容。 KVO...会帮助你
  • KVO??能否请您详细说明一下。
  • 键值观察者。它的对应部分用于键值编码、通知。

标签: objective-c uiview


【解决方案1】:

为了强制视图重新渲染,请尝试以下操作

[varViewController.view setNeedsDisplay];

【讨论】:

  • 我使用了 setNeedDisplay 调用,但仍然没有任何变化。更新后的值不会像函数建议的那样重绘。
猜你喜欢
  • 2023-03-22
  • 1970-01-01
  • 2014-10-30
  • 1970-01-01
  • 1970-01-01
  • 2022-01-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多