我有一个名为 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/