gpt4 book ai didi

ios - 从抽屉 Controller 退出左 View Controller

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:58:01 24 4
gpt4 key购买 nike

我正在使用 MMDrawerController。我在 LeftViewController 中使用了 TableView 来在自定义单元格中显示我的数据。

LeftViewController 当我点击条形按钮时从左边滑出。

我想在点击我的 TableView 的自定义单元格后,从 LeftViewController 重定向到其他 ViewControler

在我的 LeftViewController 中,我使用以下代码

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self performSegueWithIdentifier:@"CenterViewController" sender:self];
}

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSIndexPath *path = [self.tableView indexPathForSelectedRow];
ViewController *VC = (ViewController *)[segue destinationViewController];

}

注意:CenterViewControllerViewControllerStoryboard ID>

通过使用上面的代码,ViewController 出现在 LeftViewController 之上,但我想关闭 LeftViewController 并重定向到 ViewController

My Storyboard

我使用了下面的代码,虽然它可以工作但是然后左右滑动在 ViewController 上不起作用

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
ViewController *ggg = [self.storyboard instantiateViewControllerWithIdentifier:@"ViewController"];
UINavigationController *navcon = [[UINavigationController alloc] initWithRootViewController:ggg];
AppDelegate *app =[[UIApplication sharedApplication] delegate];
app.window.rootViewController = navcon;
[app.drawerController toggleDrawerSide:MMDrawerSideLeft animated:YES completion:nil];
}

最佳答案

我认为您有以下选择:

  1. CenterViewController 中实现 UITableViewDelegate 并将 CenterViewController 实例指定为 UITableView 的委托(delegate) >LeftViewController.
  2. LeftViewController 创建一个 delegate,这样您就可以在 LeftViewController 中保留 UITableViewDelegate 的逻辑并实现CenterViewController 中的新委托(delegate)并将其指定为 LeftViewController 的委托(delegate)。
  3. 使用 NSNotificationCenter 在用户选择 LeftViewControllerUITableView 中的项目时发布通知并添加 CenterViewController 作为通知的观察员。

更新 1

您好,在代码中,我看到您正在分配一个新的 rootViewController,可能会用您自己的 ViewControler 替换 MMDrawerController 的实例,因此您会松开滑动手势。

也许您唯一需要做的就是调用 setCenterViewController:

将中央 Controller 分配给 MMDrawerController

代替

app.window.rootViewController = navcon;

使用

[drawerControllerInstance setCenterViewController:navcon];

关于ios - 从抽屉 Controller 退出左 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39183499/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com