京东分类页面部分的实现
- 分类主要布局的部分的代码
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="#F3F5F7" tools:context="com.example.com.jingdong.view.MainActivity"><include layout="@layout/title_layout" /><LinearLayout android:layout_marginTop="2dp" android:layout_width="match_parent" android:orientation="horizontal" android:layout_height="match_parent"><ListView android:layout_width="0dp" android:layout_weight="2" android:layout_height="match_parent" android:id="@+id/fr02_lv" android:background="@drawable/edtext_shape" ></ListView><FrameLayout android:layout_width="0dp" android:layout_weight="8" android:layout_height="match_parent" android:id="@+id/fr02_layout"></FrameLayout></LinearLayout></LinearLayout>
//加载上面布局的activity的类代码
package com.example.com.jingdong.fragment;import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentTransaction; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.FrameLayout; import android.widget.ListView;import com.example.com.jingdong.R; import com.example.com.jingdong.adapter.MyAdapter; import com.example.com.jingdong.mobile.pojo.FenLeiBean; import com.example.com.jingdong.mobile.pojo.ProductBean; import com.example.com.jingdong.mobile.pojo.UserBean; import com.example.com.jingdong.presenter.MyDataPresenter; import com.example.com.jingdong.view.DataView;import java.util.List;/** * Created by Administrator on 2018/3/17. */ public class Fragment02 extends Fragment implements DataView{private ListView listView;private String url = "https://www.zhaoapi.cn/product/getCatagory";private List<ProductBean.DataBean> list;private Handler handler = new Handler(){@Override public void handleMessage(Message msg) {super.handleMessage(msg);list = (List<ProductBean.DataBean>) msg.obj;listView.setAdapter(new MyAdapter(getActivity(),null, list));}};private FrameLayout fr02_layout;@Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {View view = inflater.inflate(R.layout.fragment02,container,false);//获取控件 listView = view.findViewById(R.id.fr02_lv);fr02_layout = view.findViewById(R.id.fr02_layout);MyDataPresenter myDataPresenter = new MyDataPresenter(this);myDataPresenter.NewHttp(url,2);//listview设置条目点击事件 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {@Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();//实例化要接受数据的Fragment类 Fragment02_layout layout = new Fragment02_layout();//调用他的方法 layout.getIdData(list.get(i).getCid());//replace 进行切换 fragmentTransaction.replace(R.id.fr02_layout,layout);//提交 fragmentTransaction.commit();}});return view;}@Override public void toData(List<UserBean.DataBean> list, List<ProductBean.DataBean> plist, List<FenLeiBean.DataBean> flist) {Message msg = Message.obtain();msg.obj = plist;handler.sendMessage(msg);} }
//条目点击被切换的Fragment 布局
<?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:orientation="vertical"><ImageView android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:layout_marginLeft="20dp" android:layout_marginRight="20dp" android:layout_marginTop="20dp" android:src="@mipmap/ic_launcher" android:id="@+id/fr02_img"/><!-- 这个布局可以是ListView,可以使Recyclerview进行展示数据 --><ExpandableListView android:layout_margin="20dp" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="9" android:groupIndicator="@null" android:id="@+id/fr02_ex"></ExpandableListView></LinearLayout>
//加载上方布局的activity类
package com.example.com.jingdong.fragment;import android.annotation.SuppressLint; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ExpandableListView; import android.widget.ImageView; import android.widget.Toast;import com.bumptech.glide.Glide; import com.example.com.jingdong.Myutis.OkhttpUtils; import com.example.com.jingdong.R; import com.example.com.jingdong.adapter.Expandable_adapter; import com.example.com.jingdong.mobile.pojo.FenLeiBean; import com.example.com.jingdong.mobile.pojo.ProductBean; import com.example.com.jingdong.mobile.pojo.UserBean; import com.example.com.jingdong.presenter.MyDataPresenter; import com.example.com.jingdong.view.DataView;import java.util.ArrayList; import java.util.List;/** * Created by Administrator on 2018/4/2. */ public class Fragment02_layout extends Fragment implements DataView{private ExpandableListView fr02_ex;private ImageView img;private String url = "https://www.zhaoapi.cn/product/getProductCatagory?cid=";private List<List<FenLeiBean.DataBean.ListBean>> listbean = new ArrayList<>();private List<FenLeiBean.DataBean> list;private Handler handler = new Handler(){@Override public void handleMessage(Message msg) {super.handleMessage(msg);list = (List<FenLeiBean.DataBean>) msg.obj;//Toast.makeText(getActivity(), "list.size():" + list.size(), Toast.LENGTH_SHORT).show(); for (int i = 0; i < list.size(); i++) {listbean.add(list.get(i).getList());}Expandable_adapter expandable_adapter = new Expandable_adapter(getActivity(), list, listbean);fr02_ex.setAdapter(expandable_adapter);for (int i = 0; i< list.size(); i++) {fr02_ex.expandGroup(i);};}};@Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {View view = inflater.inflate(R.layout.fr02_layout,container,false);img = view.findViewById(R.id.fr02_img);fr02_ex = view.findViewById(R.id.fr02_ex);//实例化P层进行控制m层进行访问数据 MyDataPresenter myDataPresenter = new MyDataPresenter(Fragment02_layout.this);//传入地址进行访问 myDataPresenter.NewHttp(url,3);return view;}//定义一个接受那个listview 点击item传入过来的cid; public void getIdData(int id){//String url地址进行拼接字符串 url +=id;}//view层返回的数据 @Override public void toData(List<UserBean.DataBean> list, List<ProductBean.DataBean> plist, List<FenLeiBean.DataBean> flist) {//Message进行传入数据 Message msg = Message.obtain();msg.obj = flist;//使用handler发送数据 handler.sendMessage(msg);} }
京东分类页面部分的实现相关推荐
- 仿京东App分类页面的实现
今天群里有人问了关于仿京东App分类页面的实现,而我之前正好查过这方面的资料,手上正好有一个demo,正好分享给大家看看,个人觉得效果棒棒哒! 首先来看效果图吧 是不是很6呢,来分析这个demo的主体 ...
- 仿京东APP分类页面(mvp模式+OkHttp封装工具类+拦截器+弱引用回收)
仿京东APP分类页面: 添加依赖 compile 'com.android.support:recyclerview-v7:24.0.0' compile 'com.google.code.gson: ...
- 使用Jsoup抓取京东图书分类页面图书信息
一.目的: 1.任务 使用 Jsoup抓取京东图书分类页面的图书信息. 抓取目标分类网址例如:https://list.jd.com/list.html?cat=1713,3259,3330 给与的某 ...
- html商品分类列表页面,仿京东商城系列7------商品分类页面
前言 本文我们将一起实现一个仿京东商品分类页面.废话不说,上图: 商品分类.gif 内容 商品分类展示页面涉及到的技术有Okhttp , Fresco加载机制,MaterialRefreshLayou ...
- woocommerce分类页面模板_怎样让wordpress网站的不同分类页面,调用不同的banner图片?...
在我们的wordpress网站模板开发中,我们可能有这样的一个需求,就是能在自己的wordpress网站的不同的分类目录页面,能调用不同的banner图片.比如:医院类网站,医院科室比较多,男科分类调 ...
- python爬虫实例手机_Python爬虫实现爬取京东手机页面的图片(实例代码)
实例如下所示: __author__ = 'Fred Zhao' import requests from bs4 import BeautifulSoup import os from urllib ...
- 京东动态页面爬虫 scrapy+selenium
京东动态页面爬虫 大家都知道,京东页面抓取是需要下拉滑块才能加载完全的,今天给大家分享一下用scrapy+selenium进行数据的抓取. 京东页面的解析很简单,相信大家都会xpath或者正则,bs4 ...
- 【VUE】微商城(七)----实现分类页面功能
微商城源码 微商城后端接口项目以及部署说明包含API接口说明文档 1.分类页面的基本布局 1).分类页面左侧一级分类布局 1.找到CategoryView.vue页面,编写js代码,发送请求获取 ...
- HTML第6章上机练习3(制作京东快报页面)
代码如下: <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF- ...
- Django 学习小组:博客开发实战第二周教程 —— 实现博客详情页面和分类页面
本教程内容已过时,更新版教程请访问: django 博客开发入门教程. 上周我们完成了博客的 Model 部分,以及 Blog 的首页视图 IndexView. 本节接上周的文档 Django 学习小 ...
最新文章
- VS2017+OpenCV3.4.0 折腾(5)
- 科研|Science回应中国燃料电池研究“造假”:发函重点关注,之前撤稿率100%
- 首张人类黑洞照片的背后
- 数据可视化【八】根据数据类型选择可视化方式
- 前端学习(1863)vue之电商管理系统电商系统之绘制登录表单区域
- 【C++ STL学习之五】容器set和multiset
- div和img之间的缝隙问题
- 【MyBatis笔记】06-Mapper动态代理
- php反序列化java.long_细数java中Long与Integer比较容易犯的错误总结
- 【原创】k8s源代码分析-----kubelet(3)ContainerGC
- cv2读取带中文路径方法
- BZOJ4456 ZJOI2016旅行者(分治+最短路)
- 联通光猫IPV6配置
- 查词根词缀特别好的网站
- 【支线】输电杆塔识别-YOLO v5在Aidlux的部署
- 基于Python+MySQL的书店销售管理管理子系统设计
- 4.2京东登陆界面上部分
- html+css仿QQ邮箱静态界面
- 条码扫描器的安装方法与使用注意事项
- AlexNet网络实现
热门文章
- 零库存挑战-分压电阻选择器V1.01【下载地址发布】
- 网络信息安全攻防实验室
- springboot支付宝微信支付对接总结
- java调用第三方短信接口 本地能发送短信,服务器却发不了,直到超时
- 三大开源bi工具_不用无限手套,人人都能开发 BI 系统------开源BI软件,可集成的BI工具...
- 财务管理都学什么计算机课程,计算机财务管理课程教学大纲.DOC
- STK之Commu模块之二-仿真同步卫星与地面站通信显示EIRP分布
- Linux下编写GT911触摸驱动
- oracle保留两位小数解决方案
- android 自定义emoji表情包,emoji表情制作