GDGFoz RxJava • RxJava - Reactive Extensions para a JVM - uma biblioteca para compor programas assíncronos e baseados em eventos usando sequências observáveis. • Netflix • 1.0.0 em 18 Nov 2014 • 2.0.0 em 28 Out 2016
GDGFoz Model/View/Presenter // Presenter contract interface RepositoriesContract { interface Presenter { fun getAllRepositories() } } // Passing View to Presenter class RepositoriesPresenter(val view: RepositoriesContract.View): RepositoriesContract.Presenter lateinit var model: RepositoryModel override fun getAllRepositories() { // Call model and set data to View // Can be RxJava var repositories:List = model.getAllRepositories() view.setRepositories(repositories) }
GDGFoz Save states // Save override fun onSaveInstanceState(state: Bundle?) { super.onSaveInstanceState(state) //Can create Bundle here state.putAll(viewModel.getState()) } // Restore override fun onRestoreInstanceState(bundle: Bundle) { super.onRestoreInstanceState(bundle) viewModel.restoreState(bundle) }