![]()
![]()
![]()
public class MainActivity extends AppCompatActivity { private Banner imgbanner; private RecyclerView recyclerView; private int page = 1; private List<NewsInfo.GoodsListBean> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initview(); ArrayList<String>imgs=new ArrayList<>(); imgs.add("http://img3.cache.netease.com/photo/0003/2017-05-23/CL4NH4IP00AJ0003.jpg"); imgs.add("http://img5.duitang.com/uploads/item/201610/21/20161021102411_5yVMY.jpeg"); imgs.add("http://cdn.duitang.com/uploads/item/201504/20/20150420H3042_na2Mz.thumb.700_0.jpeg"); imgs.add("http://p8.yokacdn.com/pic/YOKA_MEN/2016-09-28/U10053P41TS1475055548_40282.jpg"); imgs.add("http://img4.duitang.com/uploads/item/201502/21/20150221000357_ekkER.jpeg"); imgbanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR); imgbanner.setImageLoader(new GlideImageLoader());//加载图片 imgbanner.setImages(imgs);//图片 imgbanner.setDelayTime(1500);//延迟 imgbanner.isAutoPlay(true); imgbanner.start();//开始轮播 getData("http://apiv3.yangkeduo.com/v5/newlist?page=" + page + "&size=20"); } //使用okhttp获取网络数据 private void getData(String url) { Request build = new Request.Builder().url(url).build(); MyApplication.getOkHttpClient().newCall(build).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { if (response.isSuccessful()) { String result = response.body().string(); //解析数据 Gson gson = new Gson(); NewsInfo newsInfo = gson.fromJson(result, NewsInfo.class); list = newsInfo.getGoods_list(); runOnUiThread(new Runnable() { private RecyclerAdapter recycler; @Override public void run() { recycler = new RecyclerAdapter(list, MainActivity.this); recyclerView.setAdapter(recycler); } }); } } }); } public class GlideImageLoader extends ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { DisplayImageOptions options = new DisplayImageOptions.Builder() .cacheInMemory(true)//让图片进行内存缓存 .cacheOnDisk(true)//让图片进行sdcard缓存 .showImageOnLoading(R.mipmap.ic_launcher)//图片正在加载的时候显示的图片 .build(); com.nostra13.universalimageloader.core.ImageLoader loader = com.nostra13.universalimageloader.core.ImageLoader.getInstance(); ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(MainActivity.this); loader.init(configuration); loader.displayImage((String) path, imageView, options); } } private void initview() { imgbanner = (Banner) findViewById(R.id.imgbanner); recyclerView = (RecyclerView) findViewById(R.id.recyclerview); LinearLayoutManager linearLayoutManager=new LinearLayoutManager(MainActivity.this); recyclerView.setLayoutManager(linearLayoutManager); } }
public class MyApplication extends Application{ private static OkHttpClient okHttpClient; @Override public void onCreate() { super.onCreate(); okHttpClient = new OkHttpClient(); okHttpClient = okHttpClient .newBuilder() .connectTimeout(5, TimeUnit.SECONDS) .readTimeout(5, TimeUnit.SECONDS) .build();} public static OkHttpClient getOkHttpClient() { return okHttpClient; } }public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.MyViewHolder>{ private List<NewsInfo.GoodsListBean> list; private Context context; public RecyclerAdapter(List<NewsInfo.GoodsListBean> list, Context context) { this.list = list; this.context = context; } @Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item, parent, false); return new MyViewHolder(view); } @Override public void onBindViewHolder(MyViewHolder holder, final int position) { holder.textview.setText(list.get(position).getGoods_name()); holder.textview.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(context, list.get(position).getGoods_name(), Toast.LENGTH_SHORT).show(); } }); final String image = list.get(position).getThumb_url(); Glide.with(context) .load(image) .into(holder.image); } @Override public int getItemCount() { return list.size(); } public class MyViewHolder extends RecyclerView.ViewHolder { private ImageView image; private TextView textview; public MyViewHolder(View itemView) { super(itemView); image = (ImageView) itemView.findViewById(R.id.image); textview = (TextView) itemView.findViewById(R.id.textview); } } }
OkHppt+banner
最新推荐文章于 2022-09-28 17:05:19 发布