我有一个一般性问题,我想对另一个类隐藏按钮,该类是一个包装类,用于混合 c++ 代码和目标 c 代码。我有一个函数,例如:do action{},该函数将根据输入显示一些按钮并隐藏一些其他按钮。如果我在同一个类中调用该函数,它工作正常。但是,如果我从未按预期工作的包装类调用。
当单击按钮时,我尝试通过调用这样的函数来更改按钮的状态。有效。
main_class.mm
- (IBAction)switchViews:(id)sender
{
[self doaction:5];
}
-(void) doaction:user_id
{
self.email_id.hidden = YES;
}
@interface interface_wrapper : NSObject
{
@public
rootViewController *root_view;
}
-(void) doaction:(long)user_id;
@end
@implementation gui_interface_wrapper
-(void) success:(long) user_id
{
// root_view is set with root controller object. So that I can access main which is having the button.
[root_view.main doaction:user_id];
}
@end 但是,如果我没有在那个地方调用该函数。并且函数调用是从外部的某个包装类进行的,它有一个指向该对象的指针[我检查了两个调用中的自我地址相同]按钮被禁用而不是隐藏。我们可以从包装类执行 GUI 操作吗?
任何想法?提前致谢。