日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android adapter排序,Android BindingAdapter执行顺序?

發布時間:2025/5/22 Android 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android adapter排序,Android BindingAdapter执行顺序? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我需要了解數據綁定庫如何確定其BindingAdapter的執行順序.如果我有一個View的兩個BindingAdapter,如果View有兩個屬性對應于那些BindingAdapters,它將如何確定首先執行哪個適配器?我問,因為執行順序在我的情況下很重要.

我有以下BindingAdapter / s:

public class SpinnerBindingAdapter {

@BindingAdapter(value = {"entries"})

public static void setEntries(Spinner spinner,List extends SpinnerItem> spinnerItems) {

for (int i = 0; i < spinnerItems.size(); i++) {

spinnerItems.get(i).setIndex(i);

}

ArrayAdapter extends SpinnerItem> adapter =

new ArrayAdapter<>(spinner.getContext(),R.layout.spinner_item,spinnerItems);

spinner.setAdapter(adapter);

}

@InverseBindingAdapter(attribute = "selectedItem",event = "selectedItemAttrChanged")

public static Object getSelectedItem(Spinner spinner) {

Object selectedItem = spinner.getSelectedItem();

return selectedItem;

}

@BindingAdapter(value = {"selectedItem"})

public static void setSelectedItem(Spinner spinner,SpinnerItem spinnerItem) {

if (spinner.getAdapter() == null) {

return;

}

// Other code omitted for simplicity

}

@BindingAdapter(value = {"selectedItemAttrChanged"},requireAll = false)

public static void setOnItemSelectedListener(Spinner spinner,final InverseBindingListener selectedItemChange) {

if (selectedItemChange == null) {

spinner.setOnItemSelectedListener(null);

} else {

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

@Override

public void onItemSelected(AdapterView> parent,View view,int position,long id) {

selectedItemChange.onChange();

}

@Override

public void onNothingSelected(AdapterView> parent) {

}

});

}

}

}

這是我如何填充Spinner并設置選擇:

android:id="@+id/spinner_system_activity_edit_tracker_unit"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="fill_horizontal"

app:entries="@{DatabaseModel.queryForAll()}"

app:selectedItem="@={object.selectedItem}"/>

DatabaseModel.queryForAll是一個靜態方法,它查詢數據庫并返回一個對象列表,然后將其提供給BindingAdapter. BindingAdapter獲取此列表,使用索引更新其每個項目,并將其設置為微調器的適配器.

無論出于何種原因,始終首先調用“setSelectedItem”BindingAdapter.這是不可取的,因為我需要首先初始化條目.如果先未初始化,則首次調用setSelectedItem時,spinner.getAdapter()將為null.這意味著以前保存的選擇將無法恢復.

總結

以上是生活随笔為你收集整理的android adapter排序,Android BindingAdapter执行顺序?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 夜夜爽妓女8888视频免费观看 | 免费超碰在线观看 | 久久国产精品无码一区二区 | 男人的天堂色 | 神马午夜91 | av激情在线| 69精品久久久久久 | 久久黄色视 | 中文字幕精品久久久久人妻红杏1 | 无码乱人伦一区二区亚洲 | 男人的网址 | 欧美尹人| 国产靠逼网站 | 欧美69视频| jav中文字幕| 黄色片网站大全 | 91视频com| 在线成人中文字幕 | 成人午夜免费在线 | 懂色av一区二区三区蜜臀 | 国产肥老妇视频 | www.色婷婷 | 欧洲精品一区 | 中日韩男男gay无套 人人草人人干 | 亚洲欧美自拍视频 | 影音av在线| 亚洲熟女乱综合一区二区三区 | 神马午夜伦理 | 成年人黄色 | www.超碰在线观看 | 婷婷综合亚洲 | 玖玖玖精品 | 麻豆国产一区二区三区四区 | 欧美69久成人做爰视频 | 久久午夜国产精品 | 中文字幕在线观看不卡 | 99热这里都是精品 | 精品视频免费观看 | 国产精品精品 | 麻豆高清免费国产一区 | 国产午夜大地久久 | 欧美 日韩 国产 成人 在线观看 | 欧美女人天堂 | 亚洲精品日韩综合观看成人91 | 久久久97| 日韩av在线电影 | 青青国产精品 | 大桥未久恸哭の女教师 | 日韩小视频在线观看 | 日韩一区二区三区免费 | 欧美亚洲在线播放 | 91成年视频 | 亚洲视屏在线观看 | 免费视频一区二区 | 日本一区二区三区四区视频 | 亚洲区av | 亚洲欧美日韩一区二区三区四区 | 性久久久久久久久久久 | 久久中字 | 成人18网站 | 欧美不卡在线视频 | 国产一区二区三区乱码 | 精品久久久亚洲 | 久久99久久99精品蜜柚传媒 | 日本打白嫩屁股视频 | 国产一区二区自拍视频 | sese在线| 黄色片xxxx| 国产91热爆ts人妖系列 | 成年人视频网站 | 国产又爽又黄无码无遮挡在线观看 | 38在线视频 | 欧美日韩综合在线 | 亚洲福利视频一区 | 成人av电影在线播放 | 亚洲一区二区三区网站 | 爱爱视频免费看 | 隣の若妻さん波多野结衣 | 插久久| 国产男女精品 | 美女被草网站 | 久久久久久久极品内射 | 免费看裸体视频网站 | 亚洲精品视频在线观看视频 | 欧美色啪| 精品人人 | 国产精品久久久久久久久久久久久久久久 | 国产综合视频在线 | 亚洲成a人在线观看 | 久久九九国产精品 | 成人羞羞国产免费动态 | 精品久久中文 | 99久精品视频 | 杨贵妃颤抖双乳呻吟求欢小说 | 蜜臀av性久久久久蜜臀aⅴ | 久久久久久婷 | 99久久精品一区二区 | 欧美美女性高潮 | 日本欧美一区二区三区不卡视频 |