Android自定義單選多選下拉列表的實(shí)例代碼
發(fā)瘋的產(chǎn)品要做一個(gè)可以單選和多選的下拉列表,陪你玩玩吧。
直接上效果:

實(shí)現(xiàn)方案:
我的思路是自定義一個(gè)類繼承PopupWindow,里面的選項(xiàng)采用Listview,再結(jié)合一些動(dòng)畫來(lái)實(shí)現(xiàn)。
核心代碼:
public class MultiSelectPopupWindows extends PopupWindow {
private Context context;
private View parent;
private List<Search> data;
private int yStart;
private SearchPopupWindowsAdapter adapter;
public MultiSelectPopupWindows(Context context, View parent, int yStart, List<Search> data) {
this.context = context;
this.parent = parent;
this.yStart = yStart;
this.data = data;
initView();
}
private void initView() {
View view = View.inflate(context, R.layout.popupwindows_multiselect, null);
view.startAnimation(AnimationUtils.loadAnimation(context, R.anim.fade_in_slow));
LinearLayout linearLayout = (LinearLayout) view.findViewById(R.id.linearLayout_selector);
linearLayout.startAnimation(AnimationUtils.loadAnimation(context, R.anim.list_top_in));
ListView listView = (ListView) view.findViewById(R.id.listView_selector);
setWidth(ViewGroup.LayoutParams.MATCH_PARENT);
setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
setBackgroundDrawable(new BitmapDrawable());
setFocusable(true);
setOutsideTouchable(true);
setContentView(view);
showAtLocation(parent, Gravity.TOP, 0, DensityUtil.dip2px(context, yStart));
update();
initListView(listView, data);
}
private void initListView(ListView listView, List<Search> data) {
adapter = new SearchPopupWindowsAdapter(context);
adapter.setItems(data);
listView.setAdapter(adapter);
}
public List getItemList() {
return adapter.getItemList();
}
}
項(xiàng)目源碼:https://github.com/hfrommane/MultiSelectPopupWindows
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Android實(shí)現(xiàn)彈出列表、單選、多選框
- Android ExpandableListView單選以及多選實(shí)現(xiàn)代碼
- Android ListView實(shí)現(xiàn)單選及多選等功能示例
- Android Recyclerview實(shí)現(xiàn)多選,單選,全選,反選,批量刪除的功能
- Android使用AlertDialog實(shí)現(xiàn)的信息列表單選、多選對(duì)話框功能
- Android中ListView + CheckBox實(shí)現(xiàn)單選、多選效果
- Android實(shí)現(xiàn)單選與多選對(duì)話框的代碼
- Android ListView構(gòu)建支持單選和多選的投票項(xiàng)目
- Android中創(chuàng)建對(duì)話框(確定取消對(duì)話框、單選對(duì)話框、多選對(duì)話框)實(shí)例代碼
- Android單選多選按鈕的使用方法
相關(guān)文章
Android實(shí)現(xiàn)定時(shí)自動(dòng)靜音小助手
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)定時(shí)自動(dòng)靜音小助手,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Android基于ViewFilpper實(shí)現(xiàn)文字LED顯示效果示例
這篇文章主要介紹了Android基于ViewFilpper實(shí)現(xiàn)文字LED顯示效果,結(jié)合完整實(shí)例形式分析了Android使用ViewFilpper實(shí)現(xiàn)文字LED顯示動(dòng)畫效果的相關(guān)步驟與實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-08-08
手機(jī)/移動(dòng)前端開(kāi)發(fā)需要注意的20個(gè)要點(diǎn)
本文主要介紹了手機(jī)/移動(dòng)前端開(kāi)發(fā)需要注意的20個(gè)要點(diǎn),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-03-03
Android 如何保證service在后臺(tái)不被kill
本文主要介紹了Android 如何保證service在后臺(tái)不被kill的方法。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02
Android UI設(shè)計(jì)系列之自定義TextView屬性實(shí)現(xiàn)帶下劃線的文本框(4)
這篇文章主要介紹了Android UI設(shè)計(jì)系列之自定義TextView屬性實(shí)現(xiàn)帶下劃線的文本框,具有一定的實(shí)用性和參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06
用Android?studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了用Android?studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05
Android中使用GridView進(jìn)行應(yīng)用程序UI布局的教程
GridView即平常我們見(jiàn)到的類似九宮格的矩陣型布局,只不過(guò)默認(rèn)不帶分割線,這里我們就從基礎(chǔ)開(kāi)始來(lái)看一下Android中使用GridView進(jìn)行應(yīng)用程序UI布局的教程2016-06-06
Android TextView實(shí)現(xiàn)多文本折疊、展開(kāi)效果
這篇文章主要為大家詳細(xì)介紹了Android TextView實(shí)現(xiàn)多文本折疊、展開(kāi)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05

