New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
如何向 Scene 传输数据? #23
Comments
用 rootSceneComponentFactory,拦截创建个新的 Scene,把你的 Object 通过构造方法传入 |
感谢 |
那么当在 Scene 中 Push 另一个 Scene 时需要传输对象时呢?应该如何做 |
你要支持销毁恢复吗?(就是那个 supportResotre),不支持的话(就是返回false),直接把你的对象放入构造方法参数呗,支持的话(就是返回true),写个 XXXXXScene.newIntance(YYY),只能把支持序列化的对象放入 Scene.setArguments |
是这样吗
|
class MainActivity : SceneActivity() {
override fun getHomeSceneClass(): Class<out Scene> {
return MainScene::class.java
}
override fun supportRestore(): Boolean {
return false //这里返回false
}
} |
返回true就是强制支持销毁恢复,只允许序列化的对象传递,不允许Scene有其他其他的构造方法 |
@qii 另外,Activity 或 Fragment 如何与 Scene 通信 例如 Activity 有一个下载任务,下载完后我需要通知 Scene 已经下载完成 |
在同个Activity内吗?如果是,用 ViewModel+LiveData,如果不是,用类似 EventBus 这种,订阅一个单例,下载完成的地方给这个单例发消息 |
是指 Activity 与 Scene 使用同一个 ViewModel 吗 activity:
scene:
|
是的 |
Activity 有一个 Object 要传给 Scene,Scene支持构造函数吗,如果是View的话应该是可以交给setter的才对
The text was updated successfully, but these errors were encountered: