3

您如何以编程方式在单个 UIViewController 中禁用 SWRevealViewController 滑动,同时允许它在所有其他 UIViewController 中工作?

我想在我的登录视图控制器中禁用 SWRevealViewController,这样用户就不能使用菜单绕过它。

目前,用户可以滑动来显示菜单,然后选择一个进入另一个视图控制器的项目。我想禁用它。

4

2 回答 2

9

您只想禁用特定视图的平移手势。

像这样:

SWRevealViewController *reveal = self.revealViewController;
reveal.panGestureRecognizer.enabled = NO;
于 2014-09-01T12:28:35.753 回答
0

我最终使用了一个变量,该变量在选择任何菜单项时都将相同的UiviewController重新回到正面。(这恰好是一个登录页面。)这是我使用的代码。

这迫使我的登录页面成为活动页面,即使选择了另一个菜单项。离开的唯一方法是输入用户名和密码。

所以从技术上讲,我没有禁用滑动,但这也有效。

Boolean bForceLogin = getMySettingFromDatabase;
if (bForceLogin)
{
    UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
    UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"loginviewcontroller"];
    [revealController setFrontViewController:vc animated:YES];
    return;
}
于 2014-08-05T16:00:02.397 回答