android 三级级联筛选列表

实现的思路:左边这个是listView ,右边是两级的expandListView

将这两个view 动态放到viewpager里面 设置好比例,剩下的就是处理点击联动事件了。

大体代码如下:

activity中 放viewpager的xml

<LinearLayout

android:id="@+id/category_ll"

android:layout_width=“match_parent”

android:layout_height=“wrap_content”

android:layout_above="@+id/button_ll"

android:layout_below="@+id/title_ll"

android:orientation=“vertical”

android:visibility=“gone”>

<com.jky.mobile_gczjjc.widget.MyViewPager

android:id="@+id/category_viewpager"

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:overScrollMode=“never” />

target_first_parger.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:background="@color/target_divider_color"

android:orientation=“vertical”>

<ListView

android:id="@+id/target_first_lv"

android:layout_width=“fill_parent”

android:layout_height=“fill_parent”

android:background="@color/white"

android:cacheColorHint="@android:color/transparent"

android:divider="@null"

android:scrollbars=“none” />

target_second_parger.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:background="@color/target_divider_color"

android:orientation=“vertical”>

<ExpandableListView

android:id="@+id/target_second_exl"

android:layout_width=“fill_parent”

android:layout_height=“fill_parent”

android:background="@color/white"

android:cacheColorHint="@android:color/transparent"

android:divider="@null"

android:groupIndicator="@null"

android:scrollbars=“none” />

activity中 核心代码

//一级

mViewPager = findViewById(R.id.category_viewpager);

LayoutInflater inflater = LayoutInflater.from(this);

view1 = inflater.inflate(R.layout.target_first_parger, null);

view2 = inflater.inflate(R.layout.target_second_parger, null);

mFirstListView = view1.findViewById(R.id.target_first_lv);

mSecondListView = view2.findViewById(R.id.target_second_exl);

mFirstAdapter = new TargetCategoryFirstAdapter(this, firstBeans);

mFirstAdapter.setSelectedBackgroundResource(R.drawable.select_white);//选中时

mFirstAdapter.setHasDivider(false);

mFirstAdapter.setNormalBackgroundResource(R.color.target_bg_gray);//未选中

mFirstListView.setAdapter(mFirstAdapter);

views.add(view1);

views.add(view2);//加载了一二级菜单

mViewPager.setAdapter(new MyPagerAdapter(views));

初始化数据及点击事件部分

p

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值