我在点击所选选项卡以使表格视图转到顶部时遇到了一些问题。我正在使用自定义的TabBarViewController,并在其中使用以下功能:
- (void)tabBarController:(UITabBarController *)tabBarController
didSelectViewController:(UIViewController *)viewController
{
static UIViewController *previousController = nil;
if (previousController == viewController) {
// the same tab was tapped a second time
if ([viewController respondsToSelector:@selector(scrollToTop)]) {
[viewController scrollToTop];
}
}
previousController = viewController;
}
我也收到以下错误:
No visible @interface for 'UIViewController' declares the selector 'scrollToTop'
我想知道我该如何解决这个问题?如果你们需要更多信息,请告诉我。这已经困扰了我一个星期了!
谢谢大家!!
你的标签栏控制器的视图控制器是不是UINavigationController?也许你应该这样做:
- (void)tabBarController:(UITabBarController *)tabBarController
didSelectViewController:(UIViewController *)viewController
{
static UIViewController *previousController = nil;
if ([viewController isKindOfClass:[UINavigationController class]]) {
if (previousController == ((UINavigationController *)viewController).viewControllers.firstObject) {
// the same tab was tapped a second time
if ([viewController respondsToSelector:@selector(scrollToTop)]) {
[viewController scrollToTop];
}
}
previousController = ((UINavigationController *)viewController).viewControllers.firstObject;
} else {
previousController = viewController;
}
}