【问题标题】:Appropriate place to deselect a row取消选择行的适当位置
【发布时间】:2012-04-12 01:00:20
【问题描述】:

我一直在尝试使用 UITableView 的 deselectRowAtIndexPath: 来帮助用户在返回 tableview 时知道正在查看哪一行。

我注意到我可以将它放在 viewWillAppear 和 viewDidAppear 中,结果略有不同。第一个在弹出视图滑出时开始动画,而后者仅在弹出视图完全消失后才开始动画。结果,我猜后者感觉更“明显”(更多的动画发生在屏幕上完全显示的行 - 实际上是全部)。

从美学上讲,这是一个有用的区别,因为我可以更好地控制用户体验。但是,有些问题:

  • 是否有任何技术原因我应该使用其中一个而不是另一个?
  • 仔细查看我认为它们在 viewWillAppear 中制作动画的一些 Apple 应用程序。谁能确认一下?
  • 使用 viewWillAppear 是否存在动画将在屏幕外完成的风险(可能是由于弹出视图控制器中的一些滞后处理等)?还是仅在弹出视图的过渡开始时触发?

【问题讨论】:

    标签: ios uitableview user-interface uiviewcontroller viewwillappear


    【解决方案1】:

    1) 如果您的代码依赖于完全加载的视图,则 viewDidAppear 更好,但在这种情况下,我认为这不会产生技术差异。

    2) 我认为我们没有人在 Apple 工作...

    3) viewWillAppear 根据定义在视图开始显示之前调用。如果您的动画花费的时间比视图出现的时间长,那么是的,它将在屏幕外。否则它将是(动画长度 - (减)视图出现时间)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-07-16
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      • 2012-01-19
      • 2017-03-17
      • 1970-01-01
      相关资源
      最近更新 更多