4

私は 1 つの名前をLiveData付け、次に、変更を監視し、それに応じてデータを入力するsortOrderという名前の別の変数を持っています。myDatasortOrder

class TestViewModel @ViewModelInject constructor() : ViewModel() {

    private val sortOrder = MutableLiveData<String>()

    val myData = sortOrder.map {
        Timber.d("Sort order changed to $it")
        "Sort order is $it"
    }

    init {
        sortOrder.value = "year"
    }

}

活動の観察

class TestActivity : AppCompatActivity() {

    private val viewModel: TestViewModel by viewModels()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_test)
        
        // Observing data
        viewModel.myData.observe(this) {
            Timber.d("Data is : $it")
        }
    }
}

質問

  • Flow/StateFlow出力を変更せずに上記のシナリオを API に置き換えるにはどうすればよいですか?
4

2 に答える 2