首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在iOS 7上使用导航视图控制器上的后退手势时,表视图单元格上没有淡出和淡入动画

在iOS 7上使用导航视图控制器上的后退手势时,表视图单元格上没有淡出和淡入动画
EN

Stack Overflow用户
提问于 2013-10-27 00:46:47
回答 2查看 1.1K关注 0票数 1

在iOS 7上,当使用导航控制器的后退手势(从视图的左边缘向右和向左拖动可以看到单元格的背景颜色变化)时,我的一些应用程序的表格视图会在选定的单元格上显示淡出和淡入动画。

但一些表格视图没有此动画,并且在快速拖动视图时不会取消选择选定的单元格,但在缓慢拖动视图时可以取消选择单元格。

EN

回答 2

Stack Overflow用户

发布于 2014-02-06 18:24:39

我也有同样的问题。您提到的代码似乎可以简化为甚至不检查是否有当前选定的行:

代码语言:javascript
运行
复制
- (void) viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];

    [self.tableView deselectRowAtIndexPath:[self.tableView indexPathForSelectedRow] animated:YES];
}

然而,我注意到,即使将animated设置为YES,也不会给出与按下后退按钮相同的动画效果。

我看到JosephH在这个问题中提到:

ios7 new pan gesture to go back in navigation stack does not clear tableview selection

一些背部故障可能会得到修复(在7.04中),但我仍然看到了问题,我运行的是7.04。希望是7.1?

当返回到TableView时,UITableViewController的“在外观上清除”属性应该清除之前选择的单元格,但很明显,当快速完成平移返回手势时,这不会发生。

票数 1
EN

Stack Overflow用户

发布于 2013-10-27 23:36:54

实际上,这是可行的!我只是尝试一下,它可以在拖动时获得动画效果。

代码语言:javascript
运行
复制
-(void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
    NSIndexPath *selectedRowIndexPath = [self.tableView indexPathForSelectedRow];
    if (selectedRowIndexPath) {
        [self.tableView deselectRowAtIndexPath:selectedRowIndexPath animated:YES];
    }
}

但我仍然不知道为什么这个问题会发生在一些表视图上,对我来说,在iOS 7之后创建的表视图看起来是可以的,而之前创建的旧表视图有这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19609231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档