android怎么实现仿京东商品属性筛选功能
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇"android怎么实现仿京东商品属性筛选功能"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起
千家信息网最后更新 2026年11月03日android怎么实现仿京东商品属性筛选功能
这篇"android怎么实现仿京东商品属性筛选功能"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"android怎么实现仿京东商品属性筛选功能"文章吧。
效果:
点击筛选按钮会弹出一个自己封装好的popupWindow,实用方法非常简单;两行代码直接显示;(当然初始化数据除外)
这里和以前用到的流式布局有些不一样:流式布局
以前使用的是单个分类,而且也没有在项目中大量实用;这个筛选功能除了数据外几乎都是从项目中Copy出来的;
整个popupWindow布局就是一个自定义的ListView,这个自定义的listview主要是控制listview的高度;
如果数据少的话就是自适应,如果数据多了就限制高度为屏幕的一半;
自定义的ListView:
public class CustomHeightListView extends ListView { private Context mContext; public CustomHeightListView(Context context) { this(context, null); } public CustomHeightListView(Context context, AttributeSet attrs) { this(context, attrs, 0); } public CustomHeightListView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(context); } private void init(Context context) { mContext = context; } @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { try { //最大高度显示为屏幕内容高度的一半 Display display = ((Activity) mContext).getWindowManager().getDefaultDisplay(); DisplayMetrics d = new DisplayMetrics(); display.getMetrics(d); //设置控件高度不能超过屏幕高度一半(d.heightPixels / 2,下面有清空按钮所以再减200,也可随意换成自己想要的高度) heightMeasureSpec = MeasureSpec.makeMeasureSpec(d.heightPixels / 2 - 200, MeasureSpec.AT_MOST); } catch (Exception e) { e.printStackTrace(); } //重新计算控件高、宽 super.onMeasure(widthMeasureSpec, heightMeasureSpec); } }ListView中每个item是一个流式布局:
整个popupwindow都封装在一个类中,创建的时候只需把数据源传递过去即可,实用的时候直接show就可以了
flowPopWindow = new FlowPopWindow(MainActivity.this, dictList); flowPopWindow.showAsDropDown(ivBack);
当点击确定的时候直接设置一个监听即可:
flowPopWindow.setOnConfirmClickListener(new FlowPop_Window.OnConfirmClickListener() { @Override public void onConfirmClick() { StringBuilder sb = new StringBuilder(); for (FiltrateBean fb : dictList) { List cdList = fb.getChildren(); for (int x = 0; x < cdList.size(); x++) { FiltrateBean.Children children = cdList.get(x); if (children.isSelected()) sb.append(fb.getTypeName() + ":" + children.getValue() + ";"); } } if (!TextUtils.isEmpty(sb.toString())) Toast.makeText(MainActivity.this, sb.toString(), Toast.LENGTH_LONG).show(); } } 以上就是关于"android怎么实现仿京东商品属性筛选功能"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
高度
内容
数据
功能
布局
商品
属性
京东
实用
就是
屏幕
时候
按钮
控件
文章
知识
篇文章
项目
封装
最大
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡豆
耶加雪菲
手磨咖啡
互联网黑科技
为想互联网科技怎么样
重庆互联网络科技
为想互联网科技
互联网科技股有哪些
丰台科技园 互联网公司
温州喔噻互联网科技有限公司
创业天下互联网科技有限公司
互联网科技教育视频
宝灵互联网科技有限公司
互联网科技人工智能实验室
智帮互联网科技公司最近动向
互联网科技机房
银川新华互联网科技学校原画
好易买互联网科技
安徽零酒互联网科技有限公司
互联网科技大佬云集
互联网科技金融
狮子座互联网科技有限公司
创业天下互联网科技有限公司
阿里互联网科技公司
湖北码尼互联网科技有限公司电话
智腾互联网科技有限公司
深圳市优智互联网科技有限公司
互联网科技公司营业执照怎么办理
南京一网一红互联网科技有限公司
互联网科技大会大佬