I hereby claim:
- I am JoseAlcerreca on github.
- I am josealcerreca (https://keybase.io/josealcerreca) on keybase.
- I have a public key whose fingerprint is 40FD D5C0 725B 3A94 2CD6 5D50 D779 D64E 5C2C B75E
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
| private void subscribeToModel() { | |
| // Observe product data | |
| viewModel.getObservableProduct().observe(this, new Observer<Product>() { | |
| @Override | |
| public void onChanged(@Nullable Product product) { | |
| mTitle.setText(product.title); | |
| } | |
| }); | |
| } |
| LiveData<Repo> repo = Transformations.switchMap(repoIdLiveData, repoId -> { | |
| if (repoId.isEmpty()) { | |
| return AbsentLiveData.create(); | |
| } | |
| return repository.loadRepo(repoId); | |
| } | |
| ); |
| public class MyLiveData extends LiveData<MyData> { | |
| public MyLiveData(Context context) { | |
| // Initialize service | |
| } | |
| @Override | |
| protected void onActive() { | |
| // Start listening | |
| } |
| /* | |
| * Copyright (C) 2018 The Android Open Source Project | |
| * | |
| * Licensed under the Apache License, Version 2.0 (the "License"); | |
| * you may not use this file except in compliance with the License. | |
| * You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, software |
| // Don't use this for events | |
| class ListViewModel : ViewModel { | |
| private val _navigateToDetails = MutableLiveData<Boolean>() | |
| val navigateToDetails : LiveData<Boolean> | |
| get() = _navigateToDetails | |
| fun userClicksOnButton() { | |
| _navigateToDetails.value = true |
| myViewModel.navigateToDetails.observe(this, Observer { | |
| if (it) startActivity(DetailsActivity...) | |
| }) |
| fun userClicksOnButton() { | |
| _navigateToDetails.value = true | |
| _navigateToDetails.value = false // Don't do this | |
| } |
| listViewModel.navigateToDetails.observe(this, Observer { | |
| if (it) { | |
| myViewModel.navigateToDetailsHandled() | |
| startActivity(DetailsActivity...) | |
| } | |
| }) |
| class ListViewModel : ViewModel { | |
| private val _navigateToDetails = MutableLiveData<Boolean>() | |
| val navigateToDetails : LiveData<Boolean> | |
| get() = _navigateToDetails | |
| fun userClicksOnButton() { | |
| _navigateToDetails.value = true | |
| } |