Android自定义单选多选下拉列表的实例代码
程序员文章站
2022-10-10 12:39:31
发疯的产品要做一个可以单选和多选的下拉列表,陪你玩玩吧。
直接上效果:
实现方案:
我的思路是自定义一个类继承popupwindow,里面的选项采用listvie...
发疯的产品要做一个可以单选和多选的下拉列表,陪你玩玩吧。
直接上效果:
实现方案:
我的思路是自定义一个类继承popupwindow,里面的选项采用listview,再结合一些动画来实现。
核心代码:
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(); } }
项目源码:https://github.com/hfrommane/multiselectpopupwindows
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: UG草图怎么导出为xt格式文件?