android怎么实现仿京东商品属性筛选功能
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,这篇"android怎么实现仿京东商品属性筛选功能"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起
千家信息网最后更新 2025年11月15日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安全错误
数据库的锁怎样保障安全
自动化巡检网络安全
网络安全推荐导师
oa办公软件开发资料
6端口网络安全硬件设备哪家好
数据库cdk生成算法
迪科网络安全
网络技术下一步工作计划
中网云服务器
河北手机软件开发常用指南
宁河区企业网络技术答疑解惑
黄浦区应用软件开发培训
浦东新区软件开发案例
自己搭建邮件服务器安全吗
android服务器交互
租用服务器数据丢了
福佳集团软件开发
国家网络安全宣传周主题目的
华为2280h服务器
幼儿 网络安全 教案
国际 软件开发 认证
深圳交友软件开发怎么样
gulp搭建服务器
新能源网络技术出厂价格
用普通电脑制作海康流媒体服务器
黄浦区应用软件开发培训
平台和服务器
盛强互联网科技
2019年网络安全宣传口号
数据库管理与应用教材内容
合同风险数据库