Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 目标C:如何禁用除一个选项卡栏之外的所有选项卡栏的用户交互?_Objective C_Ios_Tabbar_User Interaction - Fatal编程技术网

Objective c 目标C:如何禁用除一个选项卡栏之外的所有选项卡栏的用户交互?

Objective c 目标C:如何禁用除一个选项卡栏之外的所有选项卡栏的用户交互?,objective-c,ios,tabbar,user-interaction,Objective C,Ios,Tabbar,User Interaction,正如标题所暗示的,我希望能够锁定除一个之外的所有选项卡栏。只有在用户完成一个操作后,我才能启用所有其余的选项卡栏。我该怎么做?在uitabardelegate中的方法tabBar:didSelectItem:可能会有所帮助。我没有尝试过,但根据,您可以从tabBar控制器:shouldSelectViewController:委托返回否 [更新]我只是出于好奇尝试了一下-似乎效果不错。从“选项卡栏应用程序”模板创建一个新项目,然后转到FirstViewController的-viewDidLoa

正如标题所暗示的,我希望能够锁定除一个之外的所有选项卡栏。只有在用户完成一个操作后,我才能启用所有其余的选项卡栏。我该怎么做?

uitabardelegate
中的方法
tabBar:didSelectItem:
可能会有所帮助。

我没有尝试过,但根据,您可以从
tabBar控制器:shouldSelectViewController:
委托返回否

[更新]我只是出于好奇尝试了一下-似乎效果不错。从“选项卡栏应用程序”模板创建一个新项目,然后转到FirstViewController的
-viewDidLoad
。添加此行:

[self.tabBarController setDelegate:self];
然后实现委托方法:

-(BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController {
    if (userHasCompletedAction) {
        return YES;
    }
    return NO;
}
不要忘记遵守.h文件中的


希望有帮助。

您必须实现此方法

- (void)tabBarController:(UITabBarController *)tabBarController1 didSelectViewController:(UIViewController *)viewController {

    if ([tabBarController1 selectedIndex]==0) { 
        UITabBarItem *tabBarItem = [[[[self tabBarController]tabBar]items] objectAtIndex:1];
        [tabBarItem setEnabled:FALSE];

    } 
}

您必须这样做才能禁用所需的选项卡栏项目。

谢谢您的回答:)我可以检查一下您是否知道如何选择要禁用的选项卡吗?我需要禁用除一个选项卡以外的所有选项卡。在这个方法中,我不确定是否可以指定tabBarController和viewController都是参数,因此可以根据代码选择所需的参数。检查这些类的属性,例如,可以使用“selectedIndex”。