implementation 'com.facebook.fresco:fresco:1.8.1'implementation 'com.android.support:design:27.1.1'//添加retrofit依赖compile 'com.squareup.retrofit2:retrofit:2.3.0'//添加gson转换器的依赖compile 'com.squareup.retrofit2:converter-gson:2.3.0'compile "io.reactivex.rxjava2:rxjava:2.1.10"
//RXJava安卓的依赖compile 'io.reactivex.rxjava2:rxandroid:2.0.2'//注意 rxjava2是2.0的 不加2表示的是1.0compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
    <uses-permission android:name="android.permission.INTERNET"/><uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<?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"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:fresco="http://schemas.android.com/tools"android:orientation="horizontal"android:padding="10dp"android:layout_margin="10dp"><com.facebook.drawee.view.SimpleDraweeViewandroid:layout_width="100dp"android:layout_height="100dp"android:id="@+id/simple_view"app:roundedCornerRadius="25dp"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/text_title"/>
</LinearLayout>
<?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"tools:context="com.example.recycleview_deom.view.MainActivity"android:orientation="vertical"><android.support.v7.widget.RecyclerViewandroid:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/recy_view"/></LinearLayout>
<?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"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:fresco="http://schemas.android.com/tools"android:orientation="horizontal"android:padding="10dp"android:layout_margin="10dp"><com.facebook.drawee.view.SimpleDraweeViewandroid:layout_width="100dp"android:layout_height="100dp"android:id="@+id/yuanxing_view"app:roundAsCircle="true"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:id="@+id/tvTitle"/></LinearLayout>
package com.example.recycleview_deom.adapter;import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;import com.example.recycleview_deom.R;
import com.example.recycleview_deom.bean.NewsBean;
import com.facebook.drawee.view.SimpleDraweeView;import java.util.List;/*** Created by 因为有个你i on 2018/6/6.*/public class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{private Context context;private NewsBean newsBean;private static  int  YUNAXING =0;private static  int  YUNAJIAO =1;public MyAdapter(Context context,NewsBean newsBean) {this.context = context;this.newsBean = newsBean;}@Overridepublic int getItemViewType(int position) {if (position % 2==0){return  YUNAXING;}else {return  YUNAJIAO;}}@NonNull@Overridepublic RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {View view;if (viewType == YUNAXING) {view = View.inflate(context, R.layout.item_yuanxin, null);YuanHolder yuanHolder = new YuanHolder(view);return yuanHolder;} else  {view = View.inflate(context, R.layout.item_yuanjiao, null);MyHolder myHolder = new MyHolder(view);return myHolder;}}@Overridepublic void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {List<NewsBean.DataBean> newslist = newsBean.getData();if (holder instanceof  YuanHolder){String picUrl =newslist .get(position).getThumbnail_pic_s();((YuanHolder) holder).yuanxing_view.setImageURI(picUrl);((YuanHolder) holder).tvTitle.setText(newsBean.getData().get(position).getTitle());}else if (holder instanceof  MyHolder){String picUrl = newslist.get(position).getThumbnail_pic_s();((MyHolder) holder).simple_view.setImageURI(picUrl);((MyHolder) holder).text_title.setText(newslist.get(position).getTitle());}}@Overridepublic int getItemCount() {if(newsBean.getData() != null &&  newsBean.getData().size() > 0){return  newsBean.getData().size();}return 0;}class MyHolder extends RecyclerView.ViewHolder {public SimpleDraweeView simple_view;public TextView text_title;public MyHolder(View itemView) {super(itemView);simple_view = itemView.findViewById(R.id.simple_view);text_title = itemView.findViewById(R.id.text_title);}}class YuanHolder extends RecyclerView.ViewHolder {public SimpleDraweeView yuanxing_view;public TextView tvTitle;public YuanHolder(View itemView) {super(itemView);yuanxing_view = itemView.findViewById(R.id.yuanxing_view);tvTitle = itemView.findViewById(R.id.tvTitle);}}
}
package com.example.recycleview_deom.app;import android.app.Application;import com.facebook.drawee.backends.pipeline.Fresco;/*** Created by 因为有个你i on 2018/6/6.*/public class App extends Application {@Overridepublic void onCreate() {super.onCreate();Fresco.initialize(this);}
}
package com.example.recycleview_deom.bean;import java.util.List;/*** Created by 因为有个你i on 2018/6/6.*/public class NewsBean {/*** msg : 成功的返回* code : 1* data : [{"uniquekey":"1326bf3c4505783d4a964f81b6220e9d","title":"美国被特朗普坑惨了!又有3个铁杆盟友公开唱对台戏!","date":"2018-05-12 07:25","category":"头条","author_name":"大国军情","url":"http://mini.eastday.com/mobile/180512072544020.html","thumbnail_pic_s":"http://04.imgmini.eastday.com/mobile/20180512/20180512_fe1bf1b6ec00098f9455c84dc81e6763_cover_mwpm_03200403.jpg","thumbnail_pic_s02":"http://04.imgmini.eastday.com/mobile/20180512/20180512_3f636fca330f2311583896aed3185196_cover_mwpm_03200403.jpg","thumbnail_pic_s03":"http://04.imgmini.eastday.com/mobile/20180512/20180512_793fab03dadcd417bf2d8e5e1e48a0f5_cover_mwpm_03200403.jpg"},{"uniquekey":"9db153b507c10bbbed1d26c29c030eef","title":"第71届戛纳电影节:贾樟柯电影《江湖儿女》首映","date":"2018-05-12 07:25","category":"头条","author_name":"新华网","url":"http://mini.eastday.com/mobile/180512072505095.html","thumbnail_pic_s":"http://01.imgmini.eastday.com/mobile/20180512/20180512072505_0fe08f494e7c090764244e3581b3e5ca_5_mwpm_03200403.jpg","thumbnail_pic_s02":"http://01.imgmini.eastday.com/mobile/20180512/20180512072505_0fe08f494e7c090764244e3581b3e5ca_1_mwpm_03200403.jpg","thumbnail_pic_s03":"http://01.imgmini.eastday.com/mobile/20180512/20180512072505_0fe08f494e7c090764244e3581b3e5ca_3_mwpm_03200403.jpg"},{"uniquekey":"4f47eb31b188cfa90881260bb2b11aa8","title":"以色列发射60枚火箭弹对伊朗进行报复,中东小霸王称号保不住了","date":"2018-05-12 07:24","category":"头条","author_name":"遇见优佳","url":"http://mini.eastday.com/mobile/180512072412903.html","thumbnail_pic_s":"http://06.imgmini.eastday.com/mobile/20180512/20180512_38f5183808987be3783b180740d12a2a_cover_mwpm_03200403.jpg","thumbnail_pic_s02":"http://06.imgmini.eastday.com/mobile/20180512/20180512_a3d9f98eb0e3fe36574581f00fa0f898_cover_mwpm_03200403.jpg","thumbnail_pic_s03":"http://06.imgmini.eastday.com/mobile/20180512/20180512_37fa1339af2e64cfd2dc85191950e8ba_cover_mwpm_03200403.jpg"},{"uniquekey":"a3ef77503b9924d7ad6957a5af5da5d1","title":"苏丹驻华大使送别招待会在公共外交文化交流中心举行","date":"2018-05-12 07:22","category":"头条","author_name":"国际在线","url":"http://mini.eastday.com/mobile/180512072229596.html","thumbnail_pic_s":"http://00.imgmini.eastday.com/mobile/20180512/20180512072229_a296d945ae7fe08eed7d78060ce3f5c2_6_mwpm_03200403.jpg","thumbnail_pic_s02":"http://00.imgmini.eastday.com/mobile/20180512/20180512072229_a296d945ae7fe08eed7d78060ce3f5c2_7_mwpm_03200403.jpg","thumbnail_pic_s03":"http://00.imgmini.eastday.com/mobile/20180512/20180512072229_a296d945ae7fe08eed7d78060ce3f5c2_5_mwpm_03200403.jpg"},{"uniquekey":"b447b3941c73a35e587273a8a1b05c2d","title":"十九届三中全会以来推进党和国家机构改革述评","date":"2018-05-12 07:17","category":"头条","author_name":"中国新闻网","url":"http://mini.eastday.com/mobile/180512071745564.html","thumbnail_pic_s":"http://00.imgmini.eastday.com/mobile/20180512/20180512071745_6accdc1c2a1356851f0bf51247a8f256_9_mwpm_03200403.jpg","thumbnail_pic_s02":"http://00.imgmini.eastday.com/mobile/20180512/20180512071745_6accdc1c2a1356851f0bf51247a8f256_8_mwpm_03200403.jpg","thumbnail_pic_s03":"http://00.imgmini.eastday.com/mobile/20180512/20180512071745_6accdc1c2a1356851f0bf51247a8f256_4_mwpm_03200403.jpg"},{"uniquekey":"fc91bd75121e2e84a6cb3d239ddb9846","title":"太反常!特朗普声称退出伊核协议以来,伊朗的表现让美军不适应","date":"2018-05-12 07:15","category":"头条","author_name":"阿尔法军事","url":"http://mini.eastday.com/mobile/180512071539046.html","thumbnail_pic_s":"http://01.imgmini.eastday.com/mobile/20180512/20180512_85e54ca8649794d2c3fdf06faf04fa87_cover_mwpm_03200403.jpg","thumbnail_pic_s02":"http://01.imgmini.eastday.com/mobile/20180512/20180512_e8df98afa3707e436d1793e66d5bc063_cover_mwpm_03200403.jpg","thumbnail_pic_s03":"http://01.imgmini.eastday.com/mobile/20180512/20180512_a1d1e3735f424eba66244a7842b2f7bf_cover_mwpm_03200403.jpg"},{"uniquekey":"ebed0b6a189873fa375a47ee8463c9be","title":"沪正在全面消除无证餐饮店铺 \u201c共享餐厅\u201d最快6月运营","date":"2018-05-12 07:13","category":"头条","author_name":"东方网","url":"http://mini.eastday.com/mobile/180512071324017.html","thumbnail_pic_s":"http://06.imgmini.eastday.com/mobile/20180512/20180512071324_ae237ccc4fcee20ec4909588b5b7609f_1_mwpm_03200403.jpg"},{"uniquekey":"8a88eb5466a46cf6d975579ccb658e29","title":"特朗普嘲讽奥巴马:他花18亿救人,我让朝鲜免费放人","date":"2018-05-12 07:09","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512070940666.html","thumbnail_pic_s":"http://05.imgmini.eastday.com/mobile/20180512/20180512070940_3108dd32b82c16f350b949340f95a647_1_mwpm_03200403.jpg"},{"uniquekey":"6113c546a13e9292ced28b0199a23108","title":"身在国外,这五点我必须说清楚!","date":"2018-05-12 07:03","category":"头条","author_name":"新华网","url":"http://mini.eastday.com/mobile/180512070344831.html","thumbnail_pic_s":"http://02.imgmini.eastday.com/mobile/20180512/20180512070344_7f0366d60dea69d79c1f0432600b5f20_4_mwpm_03200403.jpg","thumbnail_pic_s02":"http://02.imgmini.eastday.com/mobile/20180512/20180512070344_7f0366d60dea69d79c1f0432600b5f20_2_mwpm_03200403.jpg","thumbnail_pic_s03":"http://02.imgmini.eastday.com/mobile/20180512/20180512070344_7f0366d60dea69d79c1f0432600b5f20_3_mwpm_03200403.jpg"},{"uniquekey":"ca9d43ed0e6875692164bea6cc898065","title":"再\u201c读\u201d汶川|究竟是一种什么样的力量,让中国人如此勇敢地面对可怕的灾难?","date":"2018-05-12 06:59","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512065922743.html","thumbnail_pic_s":"http://03.imgmini.eastday.com/mobile/20180512/20180512065922_e367e5443f66512176376bd05ed65f9a_1_mwpm_03200403.jpg"},{"uniquekey":"da0a52bc92c10e81d16a4e728701cffc","title":"十年对比:通往汶川的唯一通道十年之变","date":"2018-05-12 06:50","category":"头条","author_name":"中国网","url":"http://mini.eastday.com/mobile/180512065018882.html","thumbnail_pic_s":"http://03.imgmini.eastday.com/mobile/20180512/20180512065018_01abef975bd32ccc728ac4e4e6a7ec6e_2_mwpm_03200403.jpg","thumbnail_pic_s02":"http://03.imgmini.eastday.com/mobile/20180512/20180512065018_9cfcb8c2869e997daf379bb7ce19180e_6_mwpm_03200403.jpg","thumbnail_pic_s03":"http://03.imgmini.eastday.com/mobile/20180512/20180512065018_0b79422343a8c1c37ec8121cd0c7a11c_5_mwpm_03200403.jpg"},{"uniquekey":"fa498034a3f9cd9fa2f5e0a2fbfd4da4","title":"全国第一!上海的马路边,应该容得下更多街头艺人","date":"2018-05-12 06:49","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512064903130.html","thumbnail_pic_s":"http://05.imgmini.eastday.com/mobile/20180512/20180512064903_6a2e203b71d2710aded08d300ab29eeb_1_mwpm_03200403.jpg"},{"uniquekey":"e1b21b938c2fc3a7345ca5bd93ab3d8e","title":"被吐槽演技差的宋茜这回动真格的,吴亦凡黄子韬们也跟上节奏了!","date":"2018-05-12 06:46","category":"头条","author_name":"网易越娱乐","url":"http://mini.eastday.com/mobile/180512064621690.html","thumbnail_pic_s":"http://04.imgmini.eastday.com/mobile/20180512/20180512064621_bab229c7b39e6fa7e59dd27703ddfb38_2_mwpm_03200403.jpg","thumbnail_pic_s02":"http://04.imgmini.eastday.com/mobile/20180512/20180512064621_bab229c7b39e6fa7e59dd27703ddfb38_3_mwpm_03200403.jpg","thumbnail_pic_s03":"http://04.imgmini.eastday.com/mobile/20180512/20180512064621_bab229c7b39e6fa7e59dd27703ddfb38_1_mwpm_03200403.jpg"},{"uniquekey":"526a4c110dedc726aa4e53afbcbea23d","title":"美国重新制裁伊朗 德国经济界担忧遭连累","date":"2018-05-12 06:38","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512063843828.html","thumbnail_pic_s":"http://09.imgmini.eastday.com/mobile/20180512/20180512063843_59894e298ee0432f1d141cb347f356c8_1_mwpm_03200403.jpg"},{"uniquekey":"e0a21ea66ac913345a3ddeef2de9acea","title":"马哈蒂尔宣布特赦前副总理安华 二十年前送其入狱","date":"2018-05-12 06:38","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512063843353.html","thumbnail_pic_s":"http://06.imgmini.eastday.com/mobile/20180512/20180512063843_b6081361df8e6cd58b6d52035cb3ee3a_1_mwpm_03200403.jpg"},{"uniquekey":"06c93effa61afee08c768604e97de4d2","title":"日本二手店惊现陈水扁竞选外套 台网友酸:穿上之后手都不会抖了","date":"2018-05-12 06:38","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512063843086.html","thumbnail_pic_s":"http://03.imgmini.eastday.com/mobile/20180512/20180512063843_a198728f6df54faf3ac82f9eff70a209_1_mwpm_03200403.jpg"},{"uniquekey":"ed31cf77aaf7073879898beaed6b172d","title":"10年过去了,他们还好吗","date":"2018-05-12 06:19","category":"头条","author_name":"人民网","url":"http://mini.eastday.com/mobile/180512061919917.html","thumbnail_pic_s":"http://04.imgmini.eastday.com/mobile/20180512/20180512061919_eae4ad26c428cc7f961a1d6cf6e4264e_2_mwpm_03200403.jpg","thumbnail_pic_s02":"http://04.imgmini.eastday.com/mobile/20180512/20180512061919_eae4ad26c428cc7f961a1d6cf6e4264e_7_mwpm_03200403.jpg","thumbnail_pic_s03":"http://04.imgmini.eastday.com/mobile/20180512/20180512061919_eae4ad26c428cc7f961a1d6cf6e4264e_4_mwpm_03200403.jpg"},{"uniquekey":"fa422c905b7767276acd999a9439b43c","title":"新闻早餐:打捞人员发现疑似杀空姐嫌犯尸体 将做DNA鉴定","date":"2018-05-12 06:15","category":"头条","author_name":"新闻早餐","url":"http://mini.eastday.com/mobile/180512061559294.html","thumbnail_pic_s":"http://02.imgmini.eastday.com/mobile/20180512/20180512_418566db5b32e600bc27d0bc8cb0a6a6_cover_mwpm_03200403.jpg","thumbnail_pic_s02":"http://02.imgmini.eastday.com/mobile/20180512/20180512_8d766fd5086f98ec8741ed44505ce35c_cover_mwpm_03200403.jpg","thumbnail_pic_s03":"http://02.imgmini.eastday.com/mobile/20180512/20180512_509df6c0c45109a6989bc86c663d02cd_cover_mwpm_03200403.jpg"},{"uniquekey":"92ee0d2a31867a8f215b0517d99a9409","title":"难忘救援经历 回忆激励前行 ","date":"2018-05-12 06:07","category":"头条","author_name":"大众网","url":"http://mini.eastday.com/mobile/180512060745166.html","thumbnail_pic_s":"http://07.imgmini.eastday.com/mobile/20180512/20180512060745_78550703b206b53ace6a0c51b1d737d4_1_mwpm_03200403.jpg"},{"uniquekey":"164f8861bd6628737684dcff49f376d2","title":"回望汶川(下)| 房子差不多修好了,那么人呢?","date":"2018-05-12 06:07","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512060707642.html","thumbnail_pic_s":"http://04.imgmini.eastday.com/mobile/20180512/20180512060707_4f667adcf6d62ec0b177add95ac037e9_1_mwpm_03200403.jpg"},{"uniquekey":"a8832fbcd574b6675c0cf3a0d37937bc","title":"竟为\u201c两岸一家亲\u201d向深绿道歉,谋求连任台北市长的柯文哲向蔡英文\u201c折腰认错\u201d","date":"2018-05-12 06:07","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512060707366.html","thumbnail_pic_s":"http://07.imgmini.eastday.com/mobile/20180512/20180512060707_72a977a668e79cc22e88db944b2871ce_1_mwpm_03200403.jpg"},{"uniquekey":"92f7d43683b6d8b300ecb8888148d70e","title":"【钩沉】\u201c摸着石头过河\u201d,是邓小平的原创吗","date":"2018-05-12 06:07","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512060706828.html","thumbnail_pic_s":"http://09.imgmini.eastday.com/mobile/20180512/20180512060706_82f81c098284dc2144d47776df34b478_1_mwpm_03200403.jpg"},{"uniquekey":"4ca3a79d5762fb1d130daeadfb1f7be9","title":"忠诚守护 老人被埋170小时 家中狗狗挣脱绳索陪伴不离","date":"2018-05-12 06:01","category":"头条","author_name":"中青在线","url":"http://mini.eastday.com/mobile/180512060138223.html","thumbnail_pic_s":"http://03.imgmini.eastday.com/mobile/20180512/20180512060138_731141065c8389f053e98fd09959e9b2_2_mwpm_03200403.jpg","thumbnail_pic_s02":"http://03.imgmini.eastday.com/mobile/20180512/20180512060138_731141065c8389f053e98fd09959e9b2_1_mwpm_03200403.jpg","thumbnail_pic_s03":"http://03.imgmini.eastday.com/mobile/20180512/20180512060138_731141065c8389f053e98fd09959e9b2_3_mwpm_03200403.jpg"},{"uniquekey":"e93a1d8243a9037b1da76adc7a793739","title":"西安再添世界500强企业 将为大西安人才发展战略提供新动能","date":"2018-05-12 05:37","category":"头条","author_name":"人民网","url":"http://mini.eastday.com/mobile/180512053736878.html","thumbnail_pic_s":"http://07.imgmini.eastday.com/mobile/20180512/20180512053736_8f66fb9da7fc1f943a0ce8e61a694391_3_mwpm_03200403.jpg","thumbnail_pic_s02":"http://07.imgmini.eastday.com/mobile/20180512/20180512053736_8f66fb9da7fc1f943a0ce8e61a694391_4_mwpm_03200403.jpg","thumbnail_pic_s03":"http://07.imgmini.eastday.com/mobile/20180512/20180512053736_8f66fb9da7fc1f943a0ce8e61a694391_1_mwpm_03200403.jpg"},{"uniquekey":"b006b13ae3d14707f881eb92fc914ecd","title":"高速车道突然飞来轮胎 司机握紧方向盘救了一车游客","date":"2018-05-12 05:36","category":"头条","author_name":"中国新闻网","url":"http://mini.eastday.com/mobile/180512053627582.html","thumbnail_pic_s":"http://02.imgmini.eastday.com/mobile/20180512/20180512053627_9945660161d740d7ed793166d7227a70_1_mwpm_03200403.jpg","thumbnail_pic_s02":"http://02.imgmini.eastday.com/mobile/20180512/20180512053627_9945660161d740d7ed793166d7227a70_2_mwpm_03200403.jpg"},{"uniquekey":"94eee6750d18b56e69e7f21639e3e5f1","title":"早读|上海将筹建\u201c中共一大纪念馆\u201d","date":"2018-05-12 05:36","category":"头条","author_name":"解放网","url":"http://mini.eastday.com/mobile/180512053610949.html","thumbnail_pic_s":"http://01.imgmini.eastday.com/mobile/20180512/20180512053610_4bc3792a8ae8dfa412a4da9f45478910_1_mwpm_03200403.jpg"},{"uniquekey":"fb1c5b67794834d0a6103a20b64854c0","title":"中国电子商务快速发展 给世界带来巨大商机","date":"2018-05-12 05:23","category":"头条","author_name":"西安晚报","url":"http://mini.eastday.com/mobile/180512052309026.html","thumbnail_pic_s":"http://02.imgmini.eastday.com/mobile/20180512/20180512052309_d81eabc5f596d49d94d73f8b3fbc6a8c_1_mwpm_03200403.jpg"},{"uniquekey":"4aa30f5d94850ca14205845bc5847c5a","title":"\u201c竹简\u201d寄情 感恩父母","date":"2018-05-12 05:15","category":"头条","author_name":"大众网","url":"http://mini.eastday.com/mobile/180512051537520.html","thumbnail_pic_s":"http://04.imgmini.eastday.com/mobile/20180512/20180512051537_1f79912ff681c7cc4a96a6f97f967479_1_mwpm_03200403.jpg"},{"uniquekey":"e491de85803b55c5412ad0fbb2346a87","title":"北京海运进出口货物七成走天津","date":"2018-05-12 05:07","category":"头条","author_name":"光明网","url":"http://mini.eastday.com/mobile/180512050734360.html","thumbnail_pic_s":"http://09.imgmini.eastday.com/mobile/20180512/20180512050734_de8eae16975f2ddf8223b7c549096c70_3_mwpm_03200403.jpg","thumbnail_pic_s02":"http://09.imgmini.eastday.com/mobile/20180512/20180512050734_de8eae16975f2ddf8223b7c549096c70_1_mwpm_03200403.jpg","thumbnail_pic_s03":"http://09.imgmini.eastday.com/mobile/20180512/20180512050734_de8eae16975f2ddf8223b7c549096c70_2_mwpm_03200403.jpg"},{"uniquekey":"2f2995abb898f94aeacecd6537013404","title":"生活中诱发痔疮的五个原因不可忽略, 痔疮的治疗方法","date":"2018-05-12 04:56","category":"头条","author_name":"凤凰网","url":"http://mini.eastday.com/mobile/180512045657878.html","thumbnail_pic_s":"http://02.imgmini.eastday.com/mobile/20180512/20180512045657_15014004f9669c5aee78579be692dd66_1_mwpm_03200403.jpg","thumbnail_pic_s02":"http://02.imgmini.eastday.com/mobile/20180512/20180512045657_15014004f9669c5aee78579be692dd66_2_mwpm_03200403.jpg"}]*/private String msg;private int code;private List<DataBean> data;public String getMsg() {return msg;}public void setMsg(String msg) {this.msg = msg;}public int getCode() {return code;}public void setCode(int code) {this.code = code;}public List<DataBean> getData() {return data;}public void setData(List<DataBean> data) {this.data = data;}public static class DataBean {/*** uniquekey : 1326bf3c4505783d4a964f81b6220e9d* title : 美国被特朗普坑惨了!又有3个铁杆盟友公开唱对台戏!* date : 2018-05-12 07:25* category : 头条* author_name : 大国军情* url : http://mini.eastday.com/mobile/180512072544020.html* thumbnail_pic_s : http://04.imgmini.eastday.com/mobile/20180512/20180512_fe1bf1b6ec00098f9455c84dc81e6763_cover_mwpm_03200403.jpg* thumbnail_pic_s02 : http://04.imgmini.eastday.com/mobile/20180512/20180512_3f636fca330f2311583896aed3185196_cover_mwpm_03200403.jpg* thumbnail_pic_s03 : http://04.imgmini.eastday.com/mobile/20180512/20180512_793fab03dadcd417bf2d8e5e1e48a0f5_cover_mwpm_03200403.jpg*/private String uniquekey;private String title;private String date;private String category;private String author_name;private String url;private String thumbnail_pic_s;private String thumbnail_pic_s02;private String thumbnail_pic_s03;public String getUniquekey() {return uniquekey;}public void setUniquekey(String uniquekey) {this.uniquekey = uniquekey;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getDate() {return date;}public void setDate(String date) {this.date = date;}public String getCategory() {return category;}public void setCategory(String category) {this.category = category;}public String getAuthor_name() {return author_name;}public void setAuthor_name(String author_name) {this.author_name = author_name;}public String getUrl() {return url;}public void setUrl(String url) {this.url = url;}public String getThumbnail_pic_s() {return thumbnail_pic_s;}public void setThumbnail_pic_s(String thumbnail_pic_s) {this.thumbnail_pic_s = thumbnail_pic_s;}public String getThumbnail_pic_s02() {return thumbnail_pic_s02;}public void setThumbnail_pic_s02(String thumbnail_pic_s02) {this.thumbnail_pic_s02 = thumbnail_pic_s02;}public String getThumbnail_pic_s03() {return thumbnail_pic_s03;}public void setThumbnail_pic_s03(String thumbnail_pic_s03) {this.thumbnail_pic_s03 = thumbnail_pic_s03;}}
}
package com.example.recycleview_deom.model;import com.example.recycleview_deom.bean.NewsBean;
import com.example.recycleview_deom.presenter.Ipresenter;
import com.example.recycleview_deom.utils.RetrofitUtil;import io.reactivex.Observer;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.schedulers.Schedulers;/*** Created by 因为有个你i on 2018/6/6.*/public class MainModel {private Ipresenter ipresenter;public MainModel(Ipresenter ipresenter) {this.ipresenter = ipresenter;}public void getNews(int page){RetrofitUtil.getService().doGet(String.valueOf(page)).observeOn(AndroidSchedulers.mainThread()).subscribeOn(Schedulers.io()).subscribe(new Observer<NewsBean>() {@Overridepublic void onSubscribe(Disposable d) {}@Overridepublic void onNext(NewsBean newsBean) {ipresenter.onScuess(newsBean);}@Overridepublic void onError(Throwable e) {}@Overridepublic void onComplete() {}});}
}
package com.example.recycleview_deom.presenter;import com.example.recycleview_deom.bean.NewsBean;/*** Created by 因为有个你i on 2018/6/6.*/public interface Ipresenter {void  onScuess(NewsBean newsBean);
}
package com.example.recycleview_deom.presenter;import com.example.recycleview_deom.bean.NewsBean;
import com.example.recycleview_deom.model.MainModel;
import com.example.recycleview_deom.view.IMain;/*** Created by 因为有个你i on 2018/6/6.*/public class MainPresenter implements Ipresenter {private MainModel mainModel;private IMain iMain;public MainPresenter(IMain iMain) {this.iMain = iMain;mainModel=new MainModel(this);}public void getNews(int page){mainModel.getNews(page);}@Overridepublic void onScuess(NewsBean newsBean) {iMain.onScuess(newsBean);}
}
package com.example.recycleview_deom.utils;import com.example.recycleview_deom.bean.NewsBean;import io.reactivex.Observable;
import retrofit2.http.GET;
import retrofit2.http.Query;/*** Created by 因为有个你i on 2018/6/6.*/public interface ApiService {@GET("api/news/news.php")Observable<NewsBean> doGet(@Query("page") String page);
}
package com.example.recycleview_deom.utils;/*** Created by 因为有个你i on 2018/6/6.*/public class Contant {public static final String  BASE_URL="http://www.xieast.com/";
}
package com.example.recycleview_deom.utils;import android.util.Log;import java.io.IOException;
import java.util.HashMap;
import java.util.Map;import okhttp3.FormBody;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
import retrofit2.Retrofit;
import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory;/*** Created by 因为有个你i on 2018/6/6.*/public class RetrofitUtil {private static RetrofitUtil retrofitUtil = null;private Retrofit retrofit;private RetrofitUtil() {}private RetrofitUtil(String baseUrl) {OkHttpClient okHttpClient = new OkHttpClient.Builder()//.addNetworkInterceptor()//网络拦截器.addInterceptor(new CommonParamsInterceptor())//拦截器//.connectTimeout()//连接超时.build();//创建retrofitretrofit = new Retrofit.Builder().baseUrl(baseUrl).client(okHttpClient).addConverterFactory(GsonConverterFactory.create())//添加转换器.addCallAdapterFactory(RxJava2CallAdapterFactory.create())//设置支持rxjava 注意是2.build();}/*** 单例模式* @return*/public static RetrofitUtil getInstance(String baseUrl) {if (retrofitUtil == null) {synchronized (RetrofitUtil.class) {if (retrofitUtil == null) {retrofitUtil = new RetrofitUtil(baseUrl);}}}return retrofitUtil;}public <T> T createService(Class<T> service) {return retrofit.create(service);}public static ApiService getService() {return RetrofitUtil.getInstance(Contant.BASE_URL).createService(ApiService.class);}/*** 公共参数的拦截器*/private static class CommonParamsInterceptor implements Interceptor {//intercept方法就是拦截的意思....拦截的是一个请求,,,一旦拦截之后可以对请求的参数进行处理//Chain chain 链条的意思@Overridepublic Response intercept(Chain chain) throws IOException {//调用request()方法得到拦截的请求Request request = chain.request();//获取请求的方式String method = request.method();//GET POST//拦截的请求的路径String oldUrl = request.url().toString();Log.e("----oldUrl",oldUrl);//要添加的公共参数...mapMap<String,String> map = new HashMap<>();map.put("source","android");if ("GET".equals(method)){StringBuilder stringBuilder = new StringBuilder();//创建一个stringBuilder...字符串缓冲区stringBuilder.append(oldUrl);if (oldUrl.contains("?")){//?在最后面....2类型if (oldUrl.indexOf("?") == oldUrl.length()-1){}else {//3类型...拼接上&stringBuilder.append("&");}}else {//不包含? 属于1类型,,,先拼接上?号stringBuilder.append("?");}//添加公共参数....source=android&appVersion=100&for (Map.Entry<String,String> entry: map.entrySet()) {//拼接stringBuilder.append(entry.getKey()).append("=").append(entry.getValue()).append("&");}//删掉最后一个&符号if (stringBuilder.indexOf("&") != -1){stringBuilder.deleteCharAt(stringBuilder.lastIndexOf("&"));}//得到含有公共参数的新路径.....使用新路径去请求String newUrl = stringBuilder.toString();Log.e("----newUrl",newUrl);//新的路径构建一个新的请求request = request.newBuilder().url(newUrl).build();}else if ("POST".equals(method)){//参数在请求的实体内容上....拿到以前的参数,把以前的参数和公共参数全都添加到请求实体上RequestBody requestBody = request.body();if (requestBody instanceof FormBody){//前边是不是后边的子类/实例对象FormBody oldBody = (FormBody) requestBody;//keywords...pageFormBody.Builder builder = new FormBody.Builder();//先添加之前的参数for (int i = 0;i<oldBody.size();i++){//键值对的形式添加builder.add(oldBody.name(i),oldBody.value(i));}//添加公共参数for (Map.Entry<String,String> entry: map.entrySet()) {builder.add(entry.getKey(),entry.getValue());}//构建一个新的请求request = request.newBuilder().url(oldUrl).post(builder.build()).build();}}//执行请求 获取到响应Response response = chain.proceed(request);return response;}}/*** 接口地址:http://www.bwstudent.com/kjbd/user/modifyImg接口交互:POST接口描述:上传用户的头像FormParam入参Parameter 类型 描述 例子img   String 图片 需要上传的图片路径head入参Parameter 类型 描述 例子ak    string 版本号    001002003userId    int    用户id   1sessionId string 用户状态   201801301------------封装header的拦截器....注意封装的是不变的head头信息*/
}
package com.example.recycleview_deom.view;import com.example.recycleview_deom.bean.NewsBean;/*** Created by 因为有个你i on 2018/6/6.*/public interface IMain {void  onScuess(NewsBean newsBean);
}
package com.example.recycleview_deom.view;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;import com.example.recycleview_deom.R;
import com.example.recycleview_deom.adapter.MyAdapter;
import com.example.recycleview_deom.bean.NewsBean;
import com.example.recycleview_deom.presenter.MainPresenter;public class MainActivity extends AppCompatActivity implements IMain{private RecyclerView recyclerView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initViews();}private void initViews() {recyclerView = findViewById(R.id.recy_view);MainPresenter mainPresenter=new MainPresenter(this);int page=1;mainPresenter.getNews(page);}@Overridepublic void onScuess(NewsBean newsBean) {MyAdapter adapter=new MyAdapter(MainActivity.this,newsBean);recyclerView.setLayoutManager(new LinearLayoutManager(this));recyclerView.setAdapter(adapter);}
}

RecyclerView 多条目相关推荐

  1. 【RecyclerView】 七、RecyclerView.ItemDecoration 条目装饰 ( getItemOffsets 边距设置 )

    文章目录 一.RecyclerView.ItemDecoration 方法说明 三.getItemOffsets 设置要点 四.完整代码示例 五.RecyclerView 相关资料 一.Recycle ...

  2. RecyclerView实现条目拖拽,左滑、右滑移除效果

    对于android开发者来说RecyclerView应该已经很熟悉了,项目中基本都是使用RecyclerView来实现列表效果,这里要实现的是RecyclerView的条目拖拽.左滑.右滑移除效果,这 ...

  3. 【RecyclerView】 八、RecyclerView.ItemDecoration 条目装饰 ( onDraw 和 onDrawOver 绘制要点 )

    文章目录 一.onDraw 和 onDrawOver 绘制要点 二.onDraw 方法示例 三.onDrawOver 方法示例 四.完整代码示例 五.RecyclerView 相关资料 一.onDra ...

  4. 【RecyclerView】 六、RecyclerView.ItemDecoration 条目装饰 ( 简介 | onDraw | onDrawOver | getItemOffsets )

    文章目录 一.RecyclerView.ItemDecoration 简介 1.onDraw() 方法 2.onDrawOver () 方法 3.getItemOffsets () 方法 二.Recy ...

  5. Recyclerview嵌套Recyclerview,条目显示不全和宽度不能铺满不能同时满足

    参考了: RecyclerView常见问题解决方案,RecyclerView嵌套自动滚动,RecyclerView 高度设置wrap_content 无作用等问题 - 邱石的专栏 - CSDN博客   ...

  6. recyclerview的条目添加点击事件

    在adapter的onBindViewHolder中给view设置点击事件 holder.itemView.setOnClickListener{} 注: adapter代码: package com ...

  7. RecyclerView多条目点击删除+图片接口拼接-MVP

    例: 加依赖: dependencies { //okhttp依赖 implementation 'com.squareup.okhttp3:okhttp:3.6.0' implementation ...

  8. MVP+RecyclerView多条目+OkHttp(get和post请求方法)+属性动画+imageLoader加载图片

    //MainActivity类public class MainActivity extends AppCompatActivity implements DataView {private Recy ...

  9. 关于RecyclerView条目复用

    前言 说下前几天遇到的一个小问题,关于RecyclerView条目选中状态的保存.众所周知,RecyclerView被创造出来用于条目的回收利用,但是,当前面回收的条目带有一些特殊的状态(区别于未选中 ...

最新文章

  1. jquery实现心算练习
  2. 2020 年接近尾声,我选择来鲲鹏开发者技术峰会学点干货!
  3. red hat enterprise 6.3 change to chinese
  4. 2apt-get命令,deb包安装,源码安装
  5. 操作ROS松灵机器人步骤及遇到的问题
  6. tftp 服务器 ip_360Stack裸金属服务器部署实践
  7. linux+tar怎样解压,如何在Linux上使用tar命令解压和压缩文件
  8. linux中c语言常用内嵌汇编
  9. Anaconda tensorflow 安装笔记
  10. 数控g71编程实例带图_数控编程代码g71 数控g71编程实例有图
  11. APP自动化-显示等待/强制等待/命令等待
  12. 【fiddler抓包修改订单金额】
  13. Linux网络流量监控工具
  14. zabbix报警 Lack of free swap space on zabbix
  15. 华为鸿蒙宣传图,VIVO 联动华为?官方宣传图出现华为智联,为鸿蒙合作埋下伏笔...
  16. Envi处理MODIS流程
  17. 【联盛德W806上手笔记】八、SPI及其DMA
  18. 针对某眼电影加密字体的爬虫
  19. 新想法 | 按需视觉识别:愿景和初步方案
  20. 价格时序预测-LSTM

热门文章

  1. win10如何手动强制关联默认文件打开方式应用
  2. 人生不是故事,人生是世故,摸爬滚打才不会辜负功名尘土
  3. Markdown Reference
  4. javacv从入门到精通——第三章:基本使用
  5. JavaSE——网络编程
  6. 【网络工程】8、实操-万达酒店综合项目(二)
  7. 六自由度机械臂正向运动学与姿态绘制with matlab
  8. 【论文读后感】:A simple yet effective baseline for 3d human pose estimation
  9. 万物互联时代的操作系统报告 附下载地址
  10. java研发网页数据采集