我创建了一个commonViewcontroller
类,用于从所有标签和其他viewcontrollers
访问其视图,commonViewcontroller
类从Appdelegate
实例化,如下所示:
- (void) createCommonView // Instantiating
{
if (commonVC == nil)
{
commonVC = [[commonViewController alloc] initWithNibName:@"commonViewController" bundle:nil];
}
[self.window addSubview:commonVC.view];
}
-(void)hidePopupView //Hiding common view
{
[Utility animateUIViewWhenFrameChanged:menuVC.view newFrame:CGRectMake(0, -500, 188, 500) animationDuration:.8 animationDelay:0];
}
-(void)showPopupView //Showing common view
{
[Utility animateUIViewWhenFrameChanged:menuVC.view newFrame:CGRectMake(0, 540, 188, 500) animationDuration:.8 animationDelay:0];
}
此视图的show& hide方法在Appdelegate
中定义,如上所示,我已在其他Appdelegate
类的viewcontroller
中调用实例化和显示方法,如图所示。
AppDelegate *appDel = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDel createView];
[appDel showPopupView];
它显示正常,但tableview
视图中的commonViewControllers
除外didSelectRowAtIndexPath
未触发!所有其他委托方法都完美无误,我在Stack中尝试了许多didSelectRowAtIndexPath
未触发的解决方案。没有帮助,伙计们请帮忙!我真的遇到了这个问题。感谢。
更新:我已经为我的tableView尝试了所有这些:
self.popUpTableView.scrollEnabled = YES;
self.popUpTableView.allowsSelection = YES;
self.popUpTableView.delegate = self;
self.popUpTableView.dataSource = self;
self.popUpTableView.userInteractionEnabled = YES;
self.popUpTableView.allowsSelectionDuringEditing = YES;