iOS - 更新变量值的 UI 已更改

标签 ios variables listener

我有一个名为 recordingStatus 的 int 变量。 我想“听”这个记录状态并根据这个变量的状态更新我的标签。

int recordingStatus;

@property (strong, nonatomic) IBOutlet UILabel *recordingStatusText;

我必须这样做的原因是 recordingStatus 在我的 C 代码(也在同一个文件中)中被更改,并且 C 代码无法访问 UI 元素(据我所知)。

在 iOS 中执行此操作最优雅的方法是什么?

C 代码核心音频回调

static OSStatus rioRecordingCallback(void *inRefCon,
                              AudioUnitRenderActionFlags *ioActionFlags,
                              const AudioTimeStamp *inTimeStamp,
                              UInt32 inBusNumber,
                              UInt32 inNumberFrames,
                              AudioBufferList *ioData) {

// want to access recordingStatus in here, am I able to do it without passsing it in via inRefCon?
}

谢谢。

码头。

最佳答案

使 recordingStatus 成为对象的属性。然后您可以覆盖 setter 方法,并在该方法中执行您需要的任何 UI 更新。这样,C 代码就不需要担心 UI,Objective-C 代码可以处理 Objective-C UI 更新。

关于iOS - 更新变量值的 UI 已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13446855/

相关文章:

ios - 核心数据 : Unable to load class for entity

ios - 显示 UIMenuController 取消选择 UITableViewCell

php - 创建新变量或重新分配旧变量 - php

android - 如何知道我的 SensorManager 是否有已注册的传感器

php - Paypal 不通知我的 IPN 监听器

objective-c - 使用 JSONKit 解析 JSON 文件

ios - 在 CloudKit 中处理多对多关系

C++ 将 const 分配给环境变量或默认值

bash - 多个命令的 Unix 别名参数

java - 鼠标监听器没有给出正确的点