我在MyViewController.m文件中无法修改此API:
void my_Callback (void* context, xxxxxx::eventType::type eventtype, int code, const myconst)
{
//do stuff
}
我需要调用此函数:
-(void) update
{
self.textbox.test =@"new text";
}
但是当我尝试做的时候
void my_Callback (void* context, xxxxxx::eventType::type eventtype, int code, const myconst)
{
//do stuff
[self update];
}
我收到错误,因为它无法重新调整“自我”。
我试着这样做:
ViewController *newview = [[Viewcontroller alloc]init];
void my_Callback (void* context, xxxxxx::eventType::type eventtype, int code, const myconst)
{
//do stuff
[newview update];
}
并最终进入myfunction“更新”,但未设置新文本。
如何更新文字?感谢
答案 0 :(得分:1)
谁叫这个回调?通常有一种方法来放置一些“用户数据”。在你的情况下,它似乎是回调的void *context
参数。
因此,在定义回调的地方,您可能有机会指定上下文。在那里,您可以将它传递给实际的“自我”,以便您以后可以获得它。
但是要小心,因为这样做通常会导致迟早使用已发布的实例。
答案 1 :(得分:-2)
请检查文本框标签是否已初始化。 文本框标签可能未被初始化。