1

对于我的应用程序的iOS7版本,我正在实施像这样的侧菜单控制 - https://github.com/romaonthego/RESideMenu。这个实现是错误的,所以我决定从头开始重新实现它。我使用本教程http://www.doubleencore.com/2013/09/ios-7-custom-transitions/获取实用说明。示例代码很好。但在我的情况下,我需要从UIViewController(带按钮水龙头)转换到UITableViewController,并重新选择任何表视图单元格。自定义UIViewController转换到UITableViewController与iOS7 API

问题是,当表格视图中的单元格被选中,并且我正在关闭呈现的视图控制器时,我在实际动画之前得到了延迟。

//this cause animation with delay 
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
     [self.presentingViewController dismissViewControllerAnimated:YES completion:NULL]; 
    } 

我注意到,如果选择单元格后,我点击呈现tableview中的任何位置,动画将执行。

我添加使用GCD和固定的问题,一些延迟:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    double delayInSeconds = 0.1; 
    dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC)); 
    dispatch_after(popTime, dispatch_get_main_queue(), ^(void){ 
     [self.presentingViewController dismissViewControllerAnimated:YES completion:NULL]; 
    }); 
} 

但它看起来丑陋给我,也示例代码教程中,我指出的作品没有此解决方案,所以我想知道如果我错过了什么为什么会发生这种情况。 TableView选项设置为单选,并且tableview单元格选择样式设置为None。

也许我还应该注意到,我在tableview中添加了一些约束条件以使它适合其内容。但我认为这并不会造成这个问题,就我所知没有任何限制。

+0

您是否找到答案? –

回答

1

不错的问题。

如果你不介意的话,你可以请试试这个链接也为侧边菜单iOS7 https://www.cocoacontrols.com/controls/saslidemenu

请告诉我你看到这个链接之后。意味着我正在寻找你的上述问题。 :)

朋友你好,

我上面RESideMenu的链接它工作正常检查了。如果你想要我也可以分享代码。

相关问题