//添加依赖 compile 'com.squareup.retrofit2:retrofit:2.3.0' compile 'com.squareup.retrofit2:converter-gson:2.3.0' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile 'io.reactivex.rxjava2:rxjava:2.1.7' compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' compile 'com.facebook.fresco:fresco:1.5.0' compile 'com.youth.banner:banner:1.4.10' compile 'com.github.bumptech.glide:glide:3.7.0' compile 'org.greenrobot:eventbus:3.0.0' compile 'com.hjm:BottomTabBar:1.1.1' compile 'com.android.support:recyclerview-v7:26.0.0-alpha1' //设置全局<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" /> <uses-feature android:name="android.hardware.camera.autofocus" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_LOGS" />
//倒计时三秒进入<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@mipmap/b1i" > </LinearLayout>public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final Intent intent = new Intent(MainActivity.this,Main2Activity.class); Timer timer = new Timer(); TimerTask task = new TimerTask() { @Override public void run() { //开始运行 startActivity(intent); finish(); } }; timer.schedule(task,3000); } }
//RXjava的操作
第一个类public interface OnNetListine<T> { void onSucc(T t); void onFile(String str); }
第二个类rx调用请求public class RetrofitHolder { private static OkHttpClient okHttpClient; private static ServesApi servesApi; static { initRetrofitHolder(); } private static void initRetrofitHolder(){ if(okHttpClient==null){ synchronized (RetrofitHolder.class){ if(okHttpClient==null){ okHttpClient=new OkHttpClient.Builder().build(); } } } } public static ServesApi getApi(){ if(servesApi==null){ synchronized (ServesApi.class){ if(servesApi==null){ servesApi=RetrofitHolder.creatApi(ServesApi.class,UrlUtils.HOST); } } } return servesApi; } /** * * @param clazz * @param url * @param <T> * @return */ public static <T> T creatApi(Class<T> clazz,String url){ Retrofit retrofit = new Retrofit.Builder().baseUrl(UrlUtils.HOST) .addConverterFactory(GsonConverterFactory.create()) .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) .build(); return retrofit.create(clazz); }
第三个类,存放路径public interface ServesApi { @GET(UrlUtils.TAG) Flowable<UserBean> tags(); @GET(UrlUtils.ZUO) Flowable<GoodsBean> goods(@Query("cid")String cid); @GET(UrlUtils.XIANG) Flowable<XiangQingBean> xiang(@Query("pscid") String pscid); @GET(UrlUtils.FEN) Flowable<ZiFenLeiXiangBean> ZiFenLeiXiang(@Query("pid") String pid,@Query("source") String str);//传公共参数 @GET(UrlUtils.LUNBO) Flowable<LunBoBean> lunbo(); @GET(UrlUtils.SOU) Flowable<SouSuoBean> sou(@Query("keywords") String keywords, @Query("source") String str); @GET(UrlUtils.ADD) Flowable<AddSBean> adds(@Query("pid") String pid, @Query("source") String str); @GET(UrlUtils.SELECT) Flowable<CartBean> selects(@Query("source") String str); @GET(UrlUtils.LOGIN) Flowable<LoginBean> login(@Query("mobile") String mo, @Query("password") String pas); @GET(UrlUtils.DELETETAG) Flowable<DeleteCartBean> delete(@Query("pid") String pid); }//第四个类,存放参数public class UrlUtils { public static final String HOST = "http://120.27.23.105/"; public static final String TAG="product/getCatagory"; public static final String ZUO="product/getProductCatagory"; public static final String XIANG="product/getProducts"; //子分类下的详情 public static final String FEN="product/getProductDetail"; public static final String LUNBO="ad/getAd"; //搜索 public static final String SOU="product/searchProducts"; //加入购物车 public static final String ADD="product/addCart?uid=71"; //查询购物车 public static final String SELECT="product/getCarts?uid=71"; //登录 public static final String LOGIN="user/login"; //删除购物车 public static final String DELETETAG = "product/deleteCart?uid=71"; //更新购物车 public static final String UPDATA = "product/updateCarts?uid=71&sellerid=1&pid=1&selected=0&num=10"; }
net包Http封装public class HttpUtils { private static HttpUtils httpUtils; private HttpUtils(){ } public static HttpUtils getHttpUtils(){ if(httpUtils==null){ httpUtils = new HttpUtils(); } return httpUtils; } }//进入主页布局<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="wuhao.bwei.com.wuhao11111111111.Main2Activity"> <com.hjm.bottomtabbar.BottomTabBar android:id="@+id/bottom_tab_bar" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true"> </com.hjm.bottomtabbar.BottomTabBar> </RelativeLayout>方法public class Main2Activity extends AppCompatActivity { private BottomTabBar mb; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); mb = (BottomTabBar) findViewById(R.id.bottom_tab_bar); mb.init(getSupportFragmentManager()) .setImgSize(130,130) .setFontSize(0) .setTabPadding(4,6,10) .setChangeColor(Color.RED,Color.DKGRAY) .addTabItem("",R.mipmap.ac0,HomePageFragment.class) .addTabItem("",R.mipmap.abw, ClassifyFragment.class) .addTabItem("",R.mipmap.aby, DiscoverFragment.class) .addTabItem("",R.mipmap.abu, ShoppingFragment.class) .addTabItem("",R.mipmap.ac2, MyFragment.class) .isShowDivider(false) .setOnTabChangeListener(new BottomTabBar.OnTabChangeListener() { @Override public void onTabChange(int position, String name) { } }); } } fragment2分类布局view层<?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="horizontal" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="7"> <android.support.v7.widget.RecyclerView android:id="@+id/rvv" android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v7.widget.RecyclerView> </LinearLayout> <LinearLayout android:orientation="horizontal" android:layout_weight="3" android:layout_width="match_parent" android:layout_height="match_parent"> <ExpandableListView android:id="@+id/elv" android:layout_weight="1" android:layout_width="match_parent" android:layout_height="match_parent"> </ExpandableListView> </LinearLayout> </LinearLayout>
fragment第个二类,分类的效果public class ClassifyFragment extends Fragment implements ISuccessActivity,SetOnClicklistener,IClassActivity{ private View view; private RecyclerView mRv; private ExpandableListView elv; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fm02, container, false); ShowPresenter showPrenester=new ShowPresenter(this); showPrenester.getData(); initView(view); return view; } private void initView(View view) { mRv = (RecyclerView) view.findViewById(R.id.rvv); mRv.setLayoutManager(new LinearLayoutManager(getActivity())); elv = view.findViewById(R.id.elv); } @Override public void show(UserBean userBean) { ClassZuoAdapter classes = new ClassZuoAdapter(getActivity(),userBean.getData(),this); mRv.setAdapter(classes); } @Override public void OnClikLinter(String url) { //实例化p层 ZuoPresenter zuop = new ZuoPresenter(this); zuop.getzuoshow(url); Toast.makeText(getActivity(),url,Toast.LENGTH_SHORT).show(); } @Override public void showZuo(List<GoodsBean.DataBean> groupList, List<List<GoodsBean.DataBean.ListBean>> childList) { ZuoAdapter zuoAdapter = new ZuoAdapter(getActivity(),groupList,childList); elv.setAdapter(zuoAdapter); elv.setGroupIndicator(null); //默认让其全部展开 for(int i = 0;i<groupList.size();i++){ elv.expandGroup(i); } } }public interface ISuccessActivity { public void show(UserBean userBean); }public interface IClassActivity { public void showZuo(List<GoodsBean.DataBean> groupList,List<List<GoodsBean.DataBean.ListBean>> childList); }
m层public interface IShowModel { public void shuju(OnNetListine<UserBean> onNetListine); }public class ShowModel implements IShowModel{ @Override public void shuju(final OnNetListine<UserBean> onNetListine) { RetrofitHolder.getApi().tags() .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<UserBean>() { @Override public void accept(UserBean userBean) throws Exception { onNetListine.onSucc(userBean); } }); } }P层public class ShowPresenter { ISuccessActivity iSuccessActivity; ShowModel showModel; public ShowPresenter(ISuccessActivity iSuccessActivity) { this.iSuccessActivity = iSuccessActivity; showModel = new ShowModel(); } public void getData(){ showModel.shuju(new OnNetListine<UserBean>() { @Override public void onSucc(UserBean userBean) { iSuccessActivity.show(userBean); } @Override public void onFile(String str) { } }); } }
m层public class ZuoModel { public void getzuo(String cid, final OnNetListine<GoodsBean> onNetListine){ RetrofitHolder.getApi().goods(cid) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<GoodsBean>() { @Override public void accept(GoodsBean goodsBean) throws Exception { onNetListine.onSucc(goodsBean); } }); } }
p层public class ZuoPresenter { IClassActivity iClassActivity; ZuoModel zuoModel; public ZuoPresenter(IClassActivity iClassActivity) { this.iClassActivity = iClassActivity; zuoModel = new ZuoModel(); } public void getzuoshow(String cid){ zuoModel.getzuo(cid, new OnNetListine<GoodsBean>() { @Override public void onSucc(GoodsBean goodsBean) { List<GoodsBean.DataBean> data = goodsBean.getData(); List<List<GoodsBean.DataBean.ListBean>> list = new ArrayList<List<GoodsBean.DataBean.ListBean>>(); for(int i = 0;i<data.size();i++){ List<GoodsBean.DataBean.ListBean> list1 = data.get(i).getList(); list.add(list1); } iClassActivity.showZuo(data,list); } @Override public void onFile(String str) { } }); } }
//适配器public class ClassZuoAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{ private Context context; private List<UserBean.DataBean> list; private SetOnClicklistener setOnClicklistener; private LayoutInflater inflater; public ClassZuoAdapter(Context context, List<UserBean.DataBean> list, SetOnClicklistener setOnClicklistener) { this.context = context; this.list = list; this.setOnClicklistener = setOnClicklistener; inflater = LayoutInflater.from(context); } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //设置布局 View view = inflater.inflate(R.layout.classzuo_item, parent, false); MyViewHolder myViewHolder = new MyViewHolder(view); return myViewHolder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { //绑定布局 MyViewHolder myViewHolder = (MyViewHolder) holder; final UserBean.DataBean dataBean = list.get(position); myViewHolder.tv.setText(dataBean.getName()); myViewHolder.rel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { setOnClicklistener.OnClikLinter(dataBean.getCid()+""); } }); } @Override public int getItemCount() { return list.size(); } class MyViewHolder extends RecyclerView.ViewHolder{ private TextView tv; private RelativeLayout rel; public MyViewHolder(View itemView) { super(itemView); tv = itemView.findViewById(R.id.tv); rel = itemView.findViewById(R.id.rel); } } }
第二个适配器public class ZuoAdapter extends BaseExpandableListAdapter{ private Context context; private List<GoodsBean.DataBean> grouplist; private List<List<GoodsBean.DataBean.ListBean>> childlist; private LayoutInflater inflater; public ZuoAdapter(Context context, List<GoodsBean.DataBean> grouplist, List<List<GoodsBean.DataBean.ListBean>> childlist) { this.context = context; this.grouplist = grouplist; this.childlist = childlist; inflater=LayoutInflater.from(context); } @Override public int getGroupCount() { return grouplist.size(); } @Override public int getChildrenCount(int groupPosition) { return childlist.get(groupPosition).size(); } @Override public Object getGroup(int groupPosition) { return grouplist.get(groupPosition); } @Override public Object getChild(int groupPosition, int childPosition) { return childlist.get(groupPosition).get(childPosition); } @Override public long getGroupId(int groupPosition) { return groupPosition; } @Override public long getChildId(int groupPosition, int childPosition) { return childPosition; } @Override public boolean hasStableIds() { return false; } @Override public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { View view; GroupViewHolder holder; if(convertView==null){ holder=new GroupViewHolder(); view=inflater.inflate(R.layout.group_item,null ); holder.tv_group=view.findViewById(R.id.tv_group); view.setTag(holder); }else{ view=convertView; holder= (GroupViewHolder) view.getTag(); } GoodsBean.DataBean dataBean = grouplist.get(groupPosition); holder.tv_group.setText(dataBean.getName()); return view; } @Override public View getChildView(final int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { View view; ChildViewHolder holder; if(convertView==null){ holder=new ChildViewHolder(); view=inflater.inflate(R.layout.child_item,null); holder.rv=view.findViewById(R.id.rv); view.setTag(holder); }else{ view=convertView; holder= (ChildViewHolder) view.getTag(); } List<GoodsBean.DataBean.ListBean> listBeans = childlist.get(groupPosition); holder.rv.setLayoutManager(new GridLayoutManager(context,3));//设置布局管理器 //设置适配器 ElvRvAdapter elvRvAdapter = new ElvRvAdapter(context, listBeans); holder.rv.setAdapter(elvRvAdapter); elvRvAdapter.setOnItemClickListener(new ElvRvAdapter.OnItemClickListener() { @Override public void onItemClick(GoodsBean.DataBean.ListBean listBean) { Intent intent = new Intent(context, XiangQingActivity.class); intent.putExtra("pscid",listBean.getPscid()+""); context.startActivity(intent); } }); return view; } @Override public boolean isChildSelectable(int groupPosition, int childPosition) { return true; } class GroupViewHolder{ TextView tv_group; } class ChildViewHolder{ RecyclerView rv; } }
fragment1的布局<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <com.youth.banner.Banner android:id="@+id/home_banner" android:layout_width="match_parent" android:layout_height="250dp"> <RelativeLayout android:layout_width="match_parent" android:layout_height="50dp"> <EditText android:id="@+id/editText" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView3" android:layout_marginLeft="20dp" android:layout_marginStart="20dp" android:layout_toEndOf="@+id/textView3" android:layout_toRightOf="@+id/textView3" android:ems="10" android:hint="请输入关键字" android:inputType="textPersonName" /> <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_toEndOf="@+id/textView3" android:layout_toRightOf="@+id/textView3" app:srcCompat="@mipmap/search_icon2" /> <ImageView android:id="@+id/imageView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignParentTop="true" android:layout_marginLeft="12dp" android:layout_marginStart="12dp" app:srcCompat="@mipmap/sao_kind" /> <TextView android:id="@+id/textView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/imageView2" android:layout_alignParentBottom="true" android:layout_alignStart="@+id/imageView2" android:text="扫啊扫" /> <Button android:id="@+id/but_sou" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentEnd="true" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:text="搜索" /> </RelativeLayout> </com.youth.banner.Banner> <android.support.v7.widget.RecyclerView android:id="@+id/home_rev" android:layout_width="match_parent" android:layout_height="200dp"/> <LinearLayout android:layout_width="match_parent" android:background="#f10101" android:gravity="center_horizontal" android:orientation="horizontal" android:layout_height="wrap_content"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#060606" android:textSize="20dp" android:text="为你推荐" /> </LinearLayout> <android.support.v7.widget.RecyclerView android:id="@+id/weini_rv" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout> </ScrollView>
fragment1的方法public class HomePageFragment extends Fragment implements IlunBo,ISuccessActivity, View.OnClickListener { private View view; private Banner mHomeBanner; private List<String> listimg = new ArrayList<>(); private RecyclerView mHomeRev; private RecyclerView mWeiniRv; /** * 请输入关键字 */ private EditText mEditText; private ImageView mImageView; private ImageView mImageView2; /** * 扫啊扫 */ private TextView mTextView3; /** * 搜索 */ private Button mButSou; private LunBoPresenter lunBoPrenester; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fm01_item, container, false); initView(view); lunBoPrenester = new LunBoPresenter(this); lunBoPrenester.getShowLunNo(); ShowPresenter showPrenester = new ShowPresenter(this); showPrenester.getData(); return view; } private void initView(View view) { mHomeBanner = (Banner) view.findViewById(R.id.home_banner); mHomeRev = (RecyclerView) view.findViewById(R.id.home_rev); mHomeRev.setLayoutManager(new GridLayoutManager(getActivity(), 5)); mWeiniRv = (RecyclerView) view.findViewById(R.id.weini_rv); mWeiniRv.setLayoutManager(new GridLayoutManager(getActivity(), 2)); mEditText = (EditText) view.findViewById(R.id.editText); mImageView = (ImageView) view.findViewById(R.id.imageView); mImageView2 = (ImageView) view.findViewById(R.id.imageView2); mTextView3 = (TextView) view.findViewById(R.id.textView3); mButSou = (Button) view.findViewById(R.id.but_sou); mButSou.setOnClickListener(this); mImageView2.setOnClickListener(this); } @Override public void showLunBo(LunBoBean lunBoBean) { WeiNiAdapter weiNiAdapter = new WeiNiAdapter(getActivity(),lunBoBean.getTuijian().getList()); mWeiniRv.setAdapter(weiNiAdapter); List<LunBoBean.DataBean> data = lunBoBean.getData(); for(int i = 0;i<data.size();i++){ LunBoBean.DataBean dataBean = data.get(i); listimg.add(dataBean.getIcon()); } mHomeBanner.setImageLoader(new GlideImageLoader()); mHomeBanner.setImages(listimg); mHomeBanner.start(); } @Override public void onClick(View view) { switch (view.getId()){ default: break; case R.id.but_sou: String s = mEditText.getText().toString(); if(TextUtils.isEmpty(s)){ Toast.makeText(getActivity(),"搜索框不能为空",Toast.LENGTH_LONG).show(); }else{ Intent intent = new Intent(getActivity(), SuoSuoActivity.class); intent.putExtra("sou",s); startActivity(intent); } break; } } @Override public void show(UserBean userBean) { HomeAdapter homeAdapter = new HomeAdapter(getActivity(),userBean.getData()); mHomeRev.setAdapter(homeAdapter); } }
view层public interface IlunBo { public void showLunBo(LunBoBean lunBoBean); }public interface ISuccessActivity { public void show(UserBean userBean); }
m层p层public class LunBoModel { public void getlunbo(final OnNetListine<LunBoBean> onNetListine){ RetrofitHolder.getApi().lunbo() .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<LunBoBean>() { @Override public void accept(LunBoBean lunBoBean) throws Exception { onNetListine.onSucc(lunBoBean); } }); } }public class LunBoPresenter { IlunBo ilunBo; LunBoModel lunBoModel; public LunBoPresenter(IlunBo ilunBo) { this.ilunBo = ilunBo; lunBoModel = new LunBoModel(); } public void getShowLunNo(){ lunBoModel.getlunbo(new OnNetListine<LunBoBean>(){ @Override public void onSucc(LunBoBean lunBoBean) { ilunBo.showLunBo(lunBoBean); } @Override public void onFile(String str) { } }); } }
//适配器public class WeiNiAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{ private Context context; private List<LunBoBean.TuijianBean.ListBean> list; private LayoutInflater inflater; public WeiNiAdapter(Context context, List<LunBoBean.TuijianBean.ListBean> list) { this.context = context; this.list = list; inflater = LayoutInflater.from(context); } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { final View view = inflater.inflate(R.layout.weini_item, parent, false); MyViewHolder myViewHolder = new MyViewHolder(view); return myViewHolder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { final LunBoBean.TuijianBean.ListBean listBean = list.get(position); final String[] split = listBean.getImages().split("\\|"); MyViewHolder myViewHolder = (MyViewHolder) holder; myViewHolder.home_image.setImageURI(split[0]); myViewHolder.home_tv.setText(listBean.getTitle()); myViewHolder.home_tv_price.setText("¥"+listBean.getPrice()+""); } @Override public int getItemCount() { return list.size(); } class MyViewHolder extends RecyclerView.ViewHolder{ private SimpleDraweeView home_image; private TextView home_tv; private TextView home_tv_price; public MyViewHolder(View itemView) { super(itemView); home_image = itemView.findViewById(R.id.home_item_image); home_tv = itemView.findViewById(R.id.home_item_tv); home_tv_price = itemView.findViewById(R.id.weini_tv_price); } } }
第二个适配器public class HomeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{ private Context context; private List<UserBean.DataBean> list; private LayoutInflater inflater; public HomeAdapter(Context context, List<UserBean.DataBean> list) { this.context = context; this.list = list; inflater = LayoutInflater.from(context); } @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { final View view = inflater.inflate(R.layout.home_item, parent, false); MyViewHolder myViewHolder = new MyViewHolder(view); return myViewHolder; } @Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) { final UserBean.DataBean dataBean = list.get(position); MyViewHolder myViewHolder = (MyViewHolder) holder; myViewHolder.home_image.setImageURI(dataBean.getIcon()); myViewHolder.home_tv.setText(dataBean.getName()); } @Override public int getItemCount() { return list.size(); } class MyViewHolder extends RecyclerView.ViewHolder{ private SimpleDraweeView home_image; private TextView home_tv; public MyViewHolder(View itemView) { super(itemView); home_image = itemView.findViewById(R.id.home_item_image); home_tv = itemView.findViewById(R.id.home_item_tv); } } }
rxjava小项目
最新推荐文章于 2024-04-05 14:16:08 发布