我正在尝试在我的应用程序中创建简单的(类似 Facebook 的)菜单。我发现了几个问题,其中大多数已经接受了答案,但通常答案是使用开发人员完成的一些程序。
这些程序通常在旧版本的 xCode 中(一个不使用情节提要),而那些在情节提要中完成的程序对于我来说太复杂了,无法在我的应用程序中实现。
所以我发现了一个问题,它的答案是这样的: 1. 创建你的菜单视图控制器(对我来说是 UITableViewController) 2. 在你的初始视图控制器中隐藏这个控制器:
MenuViewController *menView = [self.storyboard instantiateViewControllerWithIdentifier:@"Menu"];
[self.view sendSubviewToBack:menView.view];
3 创建一个按钮(可能稍后平移手势),在它的方法中,执行以下操作:
-(IBAction)menuButtonPressed:(id)sender
{
CGRect destination = self.navigationController.view.frame;
if (destination.origin.x > 0) {
destination.origin.x = 0;
} else {
destination.origin.x +=254.5;
}
[UIView animateWithDuration:0.25 animations:^{
self.navigationController.view.frame = destination;
} completion:^(BOOL finished)
{
self.view.userInteractionEnabled = !(destination.origin.x > 0);
}];
}
我猜这是什么,它基本上将您的视图向右移动了固定长度。我想,你的视图,你 sendToBack (你的 UITableView)应该是公开的和可交互的。但是,它对我所做的只是将顶视图向右移动,并留下空白的黑色屏幕。
现在我想,我的问题要么是 menuView 的错误实例化,要么就是我对本指南的理解错误。
如果有人知道如何处理这个问题,我将非常感谢您的回答。也许有一些已经完成的应用程序,就像这样容易理解并且希望在我的代码中更容易实现:)
谢谢!