[問題] BindingAdapter listener的奇怪現象已刪文

看板AndroidDev作者 (阿東)時間2年前 (2021/07/26 17:30), 2年前編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
各位版友好, 我用BindingAdapter的方式想將一個listener綁到spinner上,發現一個奇怪的現象,想 不出是為什麼,想向各位請教... 底下依序分別為BindingAdapter、listener及layout中spinner的code, @BindingAdapter("app:onSelectedItem") public static void onItemSelected(Spinner spinner, AdapterView.OnItemSelectedL istener listener) { spinner.setOnItemSelectedListener(listener); } public AdapterView.OnItemSelectedListener getOnItemSelectedListener() { return new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, lon g id) { Log.i("Test",position+""); } @Override public void onNothingSelected(AdapterView<?> parent) { Log.i("Test","Nothing selected"); } }; } <Spinner android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:padding="16dp" android:id="@+id/testSpinner" android:entries="@{ViewModel.vmControl.ports}" android:selectedItemPosition="@={ViewModel.vmControl.portIndex}" app:onSelectedItem="@{Adapter.onItemSelectedListener}"/> 我將spinner中定義id 那一行拿掉,不會正常執行listener中onItemSected底下的code, 但加回去又會正常執行,請問是為什麼呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.137.103.139 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1627291842.A.BFC.html ※ 編輯: Dong0129 (114.137.103.139 臺灣), 07/26/2021 17:31:23 ※ 編輯: Dong0129 (114.137.103.139 臺灣), 07/26/2021 17:31:56
文章代碼(AID): #1W_e32ly (AndroidDev)
文章代碼(AID): #1W_e32ly (AndroidDev)