我有一个客户端服务器应用程序(Trivia Game)。
我的问题是: 当客户端位于“ waitingRoom”中时,程序会启动一个单独的线程,每秒向服务器询问游戏状态(以查看是否有其他客户端加入,以查看游戏是否开始或管理员是否关闭了房间)。
就我而言,当管理员关闭房间时,所有客户端都需要返回菜单屏幕。单独的线程收到一条消息,告诉他关闭房间,现在该线程需要更改当前显示的窗口。
我尝试使用Dispatcher.Invoke,但没有成功:
UIView.animate
Globals.SOCKET :(套接字) Globals.USER :(字符串)
编辑:此代码无效,我收到的错误是其他线程(主线程)拥有该属性。
第二次编辑:
UIView.animate(withDuration: 1.0, delay: 0.0, options: [.curveEaseOut], animations: {
self.backgroundColor = someNewColour
//Generally
//myView.backgroundColor = someNewColor
}, nil)
此代码确实有效,我更改了当前显示的listBox中的项目。