有人可以就如何从库中更新 IOS 应用程序中的 UI 文本标签给我指导/起点。
我从连接到我的应用程序的库中的 BT 模块接收到温度数据。我想将该整数数据发送到我的应用程序并更新 UI 文本标签。
注意:我可以完全访问图书馆。
任何帮助表示赞赏
有人可以就如何从库中更新 IOS 应用程序中的 UI 文本标签给我指导/起点。
我从连接到我的应用程序的库中的 BT 模块接收到温度数据。我想将该整数数据发送到我的应用程序并更新 UI 文本标签。
注意:我可以完全访问图书馆。
任何帮助表示赞赏
我认为您要求的是一种从 Cocoa 静态库向应用程序提供反馈的方法。
我建议你看看NSNotificationCenter
课堂。例如,假设您有一个类BTThermometer
,在接收到新的测量调用时:
[[NSNotificationCenter defaultCenter] postNotificationName:@"com.my.BTThermometer.NewValue" object:self];
然后,在您的应用程序中,您可以执行以下操作:
[[NSNotificationCenter defaultCenter] addObserverForName:@"com.my.BTThermometer.NewValue" object:self queue:nil usingBlock:^(NSNotification* n) {
dispatch_async(dispatch_get_main_queue(), ^{
someLabel.text = ((BTThermometer*)n.object).temperatureValue;
}
}];
这是 iOS 中的一种标准机制,用于将您的应用程序与库的内部工作分离。唯一的耦合是名称本身,当然使用常量(例如 )通常是一个好主意,#define kMyTemperatureEvent @"com.my.BTThermometer.NewValue
这样编译器就会捕捉到任何拼写错误。