带数据绑定的开关盒

Switch case with data binding

之前我已经创建了一个界面,其中有两个按钮实现了数据绑定,当单击按钮 A 时显示输入 1,如果单击按钮 B 则显示输入 1+2。类似于选择的航班旅行(单程或 return)。

我为此使用的结构是布尔值

android:onClick="@{() -> view.selectTripType(true)}"

android:onClick="@{() -> view.selectTripType(false)}"

在我的片段中创建了一个函数

 public void selectTripType(boolean isRound) {
        viewModel.setRoundTrip(isRound);
        if (isRound) {
            setTripBtnStyle(binding.fragmentBusmainBtnroundtrip, binding.fragmentBusmainBtnoneway);
            binding.fragmentBusmainReturndateT.setVisibility(View.VISIBLE);
        } else {
            setTripBtnStyle(binding.fragmentBusmainBtnoneway, binding.fragmentBusmainBtnroundtrip);
            binding.fragmentBusmainReturndateT.setVisibility(View.GONE);
        }
    }

现在,我想添加另一个具有第 3 个 case 的按钮,我可以在数据绑定中使用 switch case 还是我应该如何创建它?

使用一些整数值怎么样?

android:onClick="@{() -> view.selectTripType(1)}"

android:onClick="@{() -> view.selectTripType(2)}"

android:onClick="@{() -> view.selectTripType(3)}"

在你的函数中

public void selectTripType(int type) {
    // 1 : one way
    // 2 : round
    // 3 : disposal
}