即使我已成功在for循环中添加项目,列表也为空

时间:2019-06-24 23:10:45

标签: kotlin closures

即使我在关闭的for循环中向其中添加了项目,我的列表也为空。似乎由于关闭而无法使用,但是我不知道如何修复它。登录for循环显示正在添加数据。

processKeyEvent :: KeyEvent -> PongGame -> IO ()
processKeyEvent event game = do
  ...
  case event of
     ...
     KeyDown 'W' -> void $ swapMVar (wHeld game) True
     KeyUp   'W' -> void $ swapMVar (wHeld game) False
     ...

1 个答案:

答案 0 :(得分:0)

因为addValueEventListener是异步的,但您的返回是同步的。

您的代码显示为:

  1. 创建列表
  2. 将事件监听器添加到myRef
  3. 登录并返回在步骤1(空)中创建的列表
  4. 返回和Log.i代码之后,手动或自动触发的事件侦听器。