輪播

輪播和XrecyclerView

<?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=".fragment.AFragment"
    android:orientation="vertical"
    >
    <com.recker.flybanner.FlyBanner
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:id="@+id/Fly"
        ></com.recker.flybanner.FlyBanner>


    <com.jcodecraeer.xrecyclerview.XRecyclerView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/XRecy"
       android:layout_below="@+id/Fly"
        ></com.jcodecraeer.xrecyclerview.XRecyclerView>


</RelativeLayout>

Main

package com.example.wanzhenggouwu.fragment;


import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.widget.GridLayoutManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.example.wanzhenggouwu.R;
import com.example.wanzhenggouwu.adapter.MyAdapter;
import com.example.wanzhenggouwu.bean.MyData;
import com.example.wanzhenggouwu.presenter.IPresenterImpl;
import com.example.wanzhenggouwu.view.IView;
import com.jcodecraeer.xrecyclerview.XRecyclerView;
import com.recker.flybanner.FlyBanner;

import java.util.ArrayList;
import java.util.List;

/**
 * A simple {@link Fragment} subclass.
 */
public class AFragment extends Fragment implements IView {
    //輪播需要導入的依賴
    // implementation'com.recker.flybanner:flybanner:1.3'

    private String mUrl = "http://www.wanandroid.com/tools/mockapi/6523/restaurants_offset_0_limit_4";
    private XRecyclerView XRecy;
    private ArrayList<MyData.DataBean> mList = new ArrayList<>();
    private IPresenterImpl presenter;
    private MyAdapter adapter;

    private String[] mImagesUrl = {
            "https://ws1.sinaimg.cn/large/0065oQSqly1fuo54a6p0uj30sg0zdqnf.jpg",
            "https://ws1.sinaimg.cn/large/0065oQSqly1fv5n6daacqj30sg10f1dw.jpg",
            "https://ws1.sinaimg.cn/large/0065oQSqly1fvexaq313uj30qo0wldr4.jpg",
            "https://ws1.sinaimg.cn/large/0065oQSqly1fw0vdlg6xcj30j60mzdk7.jpg"


    };

    private FlyBanner flyBanner;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.fragment_a, null);
        initView(v);
        presenter = new IPresenterImpl(this);
        adapter = new MyAdapter(mList, getContext());
        XRecy.setAdapter(adapter);
        presenter.startRequse(mUrl);
        initNetBanner();
        return v;
    }


    //輪播
    private void initNetBanner() {

        List<String> imgesUrl = new ArrayList<>();
        for (int i = 0; i < mImagesUrl.length; i++) {
            imgesUrl.add(mImagesUrl[i]);
        }
        flyBanner.setImagesUrl(imgesUrl);

    }


    @Override
    public void success(Object data) {

        MyData myData = (MyData) data;
        mList.addAll(myData.getData());
        adapter.notifyDataSetChanged();

    }

    @Override
    public void error(Object error) {

    }

    private void initView(View v) {
        XRecy = (XRecyclerView) v.findViewById(R.id.XRecy);
        GridLayoutManager layoutManager = new GridLayoutManager(getContext(), 1);
        XRecy.setLayoutManager(layoutManager);
        flyBanner = v.findViewById(R.id.Fly);
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章