使用通知:说你在哪里捕捉到击键,你有一个 NSString 对象,其中包含一些 ID 来标识所需的 WebView(例如@"1"
等@"2"
),并且每个 Web 视图都有一个viewID
属性。因此,在您收到击键的地方,您将添加:
[[NSNotificationCenter defaultCenter]
postNotificationName:@"ChangeMyActiveWebView"
object:newViewID // <- contains string to identify the desired web view
];
在您的 Web 视图被初始化的地方(例如 -awakeFromNib 或 -init),您添加以下代码:
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(switchViewNotification:)
name:@"ChangeMyActiveWebView"
object:nil // Means any object
];
然后实现 -switchViewNotification: 方法:
- (void)switchViewNotification:(NSNotification *)aNotification {
NSString *newViewID=[aNotification object];
if([self.viewID isEqualToString:newViewID])
{
// show this web view
}
else
{
// hide this web view
}
}
最后一块:当 web 视图消失时,您需要删除观察者,因此将其添加到您的-dealloc
方法中:
[[NSNotificationCenter defaultCenter]removeObserver:self];
那应该这样做。