我有一个拥有代表的类A
。代表们正在实施另一类B
。在委托方法中进行更改时未查看更改
在B
我有一个文本字段,我试图隐藏代理被调用时。
- (void) didRecieveResponseDelegate : (BOOL) status{
textField.hidden = YES;
}
但textField不会隐藏。我注意到代理内部没有任何与视图相关的更改,包括删除子视图控制器。有什么问题,我该如何解决?
编辑:B是另一个视图控制器
我有一个拥有代表的类A
。代表们正在实施另一类B
。在委托方法中进行更改时未查看更改
在B
我有一个文本字段,我试图隐藏代理被调用时。
- (void) didRecieveResponseDelegate : (BOOL) status{
textField.hidden = YES;
}
但textField不会隐藏。我注意到代理内部没有任何与视图相关的更改,包括删除子视图控制器。有什么问题,我该如何解决?
编辑:B是另一个视图控制器
试试这个的子视图控制器,
- (void) didRecieveResponseDelegate : (BOOL) status{
dispatch_async(dispatch_get_main_queue(), ^{
textField.hidden = YES;
});
}
没有帮助:( – user2810114
你说的一切都是检查并且没问题。这里唯一需要注意的是B是另一个控制器的子视图控制器,如果有帮助的话 – user2810114
您是否添加了a.delegate = self;在B班?你可以添加日志到didRecieveResponseDelegate:确保这个方法被调用? – Greg
您是否检查过didrecieveResponseDelegate方法调用或不是 – codercat
是的,我确定调用了委托。所有日志都在委托内部工作。但我无法删除任何视图或更改元素的可见性 – user2810114