首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ProMotion屏滞后

ProMotion屏滞后
EN

Stack Overflow用户
提问于 2015-01-23 12:19:21
回答 1查看 82关注 0票数 0

我正在开发一个包含火车站列表的应用程序,当您从列表中选择一个站点时,应该有一个显示更多信息的视图。

对于我使用的列表,我使用PM::TableScreen

在这里,我有一个方法,当用户选择一个站点时,这个方法会被调用:

代码语言:javascript
运行
复制
def select_station(station)
  open StationScreen.alloc.initWithStation(station)
end

以及相应的StationScreen

代码语言:javascript
运行
复制
class StationScreen < UIViewController

  def initWithStation(station)
    init.tap do
      @station = station
    end
  end

  def loadView
    self.title = @station[:name]
    @layout = StationLayout.new
    self.view = @layout.view
  end

end

这产生了以下情况:

当您单击“后退”按钮时,效果是平滑的。

现在,我想转到推广::屏幕

StationScreen变成:

代码语言:javascript
运行
复制
class StationScreen < PM::Screen

  attr_accessor :station

  def on_load
    self.title = @station[:name]
    @layout = StationLayout.new
    self.view = @layout.view
  end

end

select_station方法:

代码语言:javascript
运行
复制
def select_station(station)
  open StationScreen.new(station: station)
end

现在的背面动画很奇怪。注意图像仍然显示了一段时间,然后就消失了。

我做错了什么?如何用ProMotion::Screen正确地实现它?

更新1:修复了它。ProMotion的例子是错误的建议。

代码语言:javascript
运行
复制
def load_view
  self.title = @station[:name]
  @layout = StationLayout.new
  self.view = @layout.view
end

这样做对吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-31 11:29:00

经过一些实验,我想出了办法。解决这一问题的方法不止一种:

( 1) on_load。这里的关键是告诉布局什么是根视图。然后,它可以正确地找出如何正确地做背面动画。如果你不给它根,就像我在刚开始的时候做的那样,动画可能会中断。(至少我是这么理解的)。

代码语言:javascript
运行
复制
def on_load
  @layout = StationLayout.new(root: self.view)
  @layout.build
end

( 2) load_view。在这里,由于某种原因,它在不指定根视图的情况下工作正常。我想,当您将self.view分配给layouts视图时,会自动发生这种情况。

代码语言:javascript
运行
复制
def load_view
  @layout = StationLayout.new
  self.view = @layout.view
end

最后我使用了on_load

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

https://stackoverflow.com/questions/28109776

复制
相关文章

相似问题

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