Search in sources :

Example 1 with BGABanner

use of cn.bingoogolapple.bgabanner.BGABanner in project BGARefreshLayout-Android by bingoogolapple.

the class DataEngine method getCustomHeaderView.

public static View getCustomHeaderView(final Context context) {
    View headerView = View.inflate(context, R.layout.view_custom_header, null);
    final BGABanner banner = headerView.findViewById(R.id.banner);
    banner.setAdapter(new BGABanner.Adapter<ImageView, String>() {

        @Override
        public void fillBannerItem(BGABanner banner, ImageView itemView, String model, int position) {
            Glide.with(itemView.getContext()).load(model).apply(new RequestOptions().placeholder(R.mipmap.holder).error(R.mipmap.holder).dontAnimate().centerCrop()).into(itemView);
        }
    });
    banner.setDelegate(new BGABanner.Delegate<ImageView, String>() {

        @Override
        public void onBannerItemClick(BGABanner banner, ImageView imageView, String model, int position) {
            Toast.makeText(banner.getContext(), "点击了第" + (position + 1) + "页", Toast.LENGTH_SHORT).show();
        }
    });
    App.getInstance().getEngine().getBannerModel().enqueue(new Callback<BannerModel>() {

        @Override
        public void onResponse(Call<BannerModel> call, Response<BannerModel> response) {
            BannerModel bannerModel = response.body();
            if (bannerModel == null) {
                return;
            }
            banner.setData(R.layout.view_image, bannerModel.imgs, bannerModel.tips);
        }

        @Override
        public void onFailure(Call<BannerModel> call, Throwable t) {
        }
    });
    return headerView;
}
Also used : RequestOptions(com.bumptech.glide.request.RequestOptions) ImageView(android.widget.ImageView) View(android.view.View) ImageView(android.widget.ImageView) BannerModel(cn.bingoogolapple.refreshlayout.demo.model.BannerModel) BGABanner(cn.bingoogolapple.bgabanner.BGABanner)

Example 2 with BGABanner

use of cn.bingoogolapple.bgabanner.BGABanner in project Palm300Heroes by nicolite.

the class NewsFragment method doBusiness.

@Override
protected void doBusiness() {
    newsPresenter = new NewsPresenter(this, this);
    View headView = LayoutInflater.from(context).inflate(R.layout.news_headview, rootView, false);
    bgaBanner = headView.findViewById(R.id.banner_guide_content);
    bgaBanner.setAdapter(new BGABanner.Adapter() {

        @Override
        public void fillBannerItem(BGABanner banner, View itemView, Object model, int position) {
            if (itemView instanceof ImageView) {
                Glide.with(context).load((String) model).placeholder(R.drawable.img_loading).error(R.drawable.img_error).skipMemoryCache(true).centerCrop().dontAnimate().into((ImageView) itemView);
            }
        }
    });
    bgaBanner.setDelegate(new BGABanner.Delegate() {

        @Override
        public void onBannerItemClick(BGABanner banner, View itemView, Object model, int position) {
            if (itemView instanceof ImageView) {
                String url = bannerList.get(position).getUrl();
                if (url.contains("/details/")) {
                    Bundle bundle = new Bundle();
                    bundle.putInt("type", WebViewActivity.TYPE_NEWS);
                    bundle.putString("url", url);
                    bundle.putString("title", "资讯详情");
                    startActivity(WebViewActivity.class, bundle);
                } else {
                    Bundle bundle = new Bundle();
                    bundle.putInt("type", WebViewActivity.TYPE_NEWS_BANNER);
                    bundle.putString("url", url);
                    bundle.putString("title", "资讯详情");
                    startActivity(WebViewActivity.class, bundle);
                }
            }
        }
    });
    View record = headView.findViewById(R.id.record);
    View equipment = headView.findViewById(R.id.equipment);
    View fightSkill = headView.findViewById(R.id.fightSkill);
    View talent = headView.findViewById(R.id.talent);
    record.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Bundle bundle = new Bundle();
            bundle.putInt("type", ContainerActivity.TYPE_NEWS_LIST);
            startActivity(ContainerActivity.class, bundle);
        }
    });
    equipment.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Bundle bundle = new Bundle();
            bundle.putInt("type", ContainerActivity.TYPE_RECORD_RANK_TITLE);
            bundle.putString("title", "服务器排行榜");
            bundle.putInt("extra", HostRankFragment.TYPE_RANK_TITLE);
            startActivity(ContainerActivity.class, bundle);
        }
    });
    fightSkill.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            startActivity(FightSkillActivity.class);
        }
    });
    talent.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            startActivity(TalentActivity.class);
        }
    });
    List<View> viewList = new ArrayList<>();
    viewList.add(record);
    viewList.add(equipment);
    viewList.add(fightSkill);
    viewList.add(talent);
    for (int i = 0; i < viewList.size(); i++) {
        View itemView = viewList.get(i);
        ImageView menuImg = itemView.findViewById(R.id.menu_img);
        TextView menuText = itemView.findViewById(R.id.menu_text);
        menuImg.setImageResource(menuImgs[i]);
        menuText.setText(menuTexts[i]);
    }
    lRecyclerView.setLayoutManager(new LinearLayoutManager(context, OrientationHelper.VERTICAL, false));
    lRecyclerViewAdapter = new LRecyclerViewAdapter(new NewsAdapter(context, newsList));
    lRecyclerView.setAdapter(lRecyclerViewAdapter);
    lRecyclerViewAdapter.addHeaderView(headView);
    lRecyclerView.setLoadMoreEnabled(false);
    lRecyclerView.setOnRefreshListener(new OnRefreshListener() {

        @Override
        public void onRefresh() {
            bannerViewList.clear();
            model.clear();
            tips.clear();
            newsPresenter.showBanner();
            newsPresenter.showNews();
        }
    });
    lRecyclerViewAdapter.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(View view, int position) {
            News news = newsList.get(position);
            if (!news.getNewsUrl().contains("/details/")) {
                Bundle bundle = new Bundle();
                bundle.putString("title", news.getNewsTitle());
                bundle.putString("url", news.getNewsUrl());
                bundle.putInt("type", WebViewActivity.TYPE_OTHERS);
                startActivity(WebViewActivity.class, bundle);
            } else {
                Bundle bundle = new Bundle();
                bundle.putString("url", news.getNewsUrl());
                bundle.putString("title", news.getNewsTitle());
                bundle.putInt("type", WebViewActivity.TYPE_NEWS);
                startActivity(WebViewActivity.class, bundle);
            }
        }
    });
    if (isFirstVisible && ListUtils.isEmpty(newsList)) {
        lRecyclerView.forceToRefresh();
    }
}
Also used : ArrayList(java.util.ArrayList) ContainerActivity(cn.nicolite.palm300heroes.view.activity.ContainerActivity) WebViewActivity(cn.nicolite.palm300heroes.view.activity.WebViewActivity) LinearLayoutManager(android.support.v7.widget.LinearLayoutManager) News(cn.nicolite.palm300heroes.model.bean.News) NewsAdapter(cn.nicolite.palm300heroes.view.oldAdapter.NewsAdapter) TextView(android.widget.TextView) ImageView(android.widget.ImageView) FightSkillActivity(cn.nicolite.palm300heroes.view.activity.FightSkillActivity) BGABanner(cn.bingoogolapple.bgabanner.BGABanner) OnItemClickListener(com.github.jdsjlzx.interfaces.OnItemClickListener) Bundle(android.os.Bundle) ImageView(android.widget.ImageView) BindView(butterknife.BindView) LRecyclerView(com.github.jdsjlzx.recyclerview.LRecyclerView) NativeExpressADView(com.qq.e.ads.nativ.NativeExpressADView) View(android.view.View) INewsView(cn.nicolite.palm300heroes.view.iview.INewsView) TextView(android.widget.TextView) LRecyclerViewAdapter(com.github.jdsjlzx.recyclerview.LRecyclerViewAdapter) TalentActivity(cn.nicolite.palm300heroes.view.activity.TalentActivity) NewsPresenter(cn.nicolite.palm300heroes.presenter.NewsPresenter) OnRefreshListener(com.github.jdsjlzx.interfaces.OnRefreshListener)

Example 3 with BGABanner

use of cn.bingoogolapple.bgabanner.BGABanner in project Palm300Heroes by nicolite.

the class TYAreaListFragment method doBusiness.

@Override
protected void doBusiness() {
    lRecyclerView.setLayoutManager(new LinearLayoutManager(context, OrientationHelper.VERTICAL, false));
    lRecyclerViewAdapter = new LRecyclerViewAdapter(new TYAreaAdapter(context, dataList));
    lRecyclerView.setAdapter(lRecyclerViewAdapter);
    lRecyclerView.setLoadMoreEnabled(false);
    if (url.equals(Constants.JUMPW_COSPLAY_RUL)) {
        View headView = LayoutInflater.from(context).inflate(R.layout.tyarea_cos_headview, rootView, false);
        bgaBanner = headView.findViewById(R.id.banner_guide_content);
        bgaBanner.setAdapter(new BGABanner.Adapter() {

            @Override
            public void fillBannerItem(BGABanner banner, View itemView, Object model, int position) {
                if (itemView instanceof ImageView) {
                    Glide.with(context).load((String) model).placeholder(R.drawable.img_loading).error(R.drawable.img_error).skipMemoryCache(true).centerCrop().dontAnimate().into((ImageView) itemView);
                }
            }
        });
        bgaBanner.setDelegate(new BGABanner.Delegate() {

            @Override
            public void onBannerItemClick(BGABanner banner, View itemView, Object model, int position) {
                if (itemView instanceof ImageView) {
                    NewsBanner newsBanner = bannerList.get(position);
                    Bundle bundle = new Bundle();
                    bundle.putInt("type", WebViewActivity.TYPE_TY_COS);
                    bundle.putString("url", newsBanner.getUrl());
                    bundle.putString("title", newsBanner.getTitle());
                    startActivity(WebViewActivity.class, bundle);
                }
            }
        });
        lRecyclerViewAdapter.addHeaderView(headView);
    }
    tyAreaPresenter = new TYAreaPresenter(this, this);
    lRecyclerView.setOnRefreshListener(new OnRefreshListener() {

        @Override
        public void onRefresh() {
            if (url.equals(Constants.JUMPW_COSPLAY_RUL)) {
                bannerViewList.clear();
                model.clear();
                tips.clear();
                tyAreaPresenter.showCosBanner();
            }
            tyAreaPresenter.showTYAreaList(url);
        }
    });
    lRecyclerView.setOnNetWorkErrorListener(new OnNetWorkErrorListener() {

        @Override
        public void reload() {
            if (url.equals(Constants.JUMPW_COSPLAY_RUL)) {
                bannerViewList.clear();
                model.clear();
                tips.clear();
                tyAreaPresenter.showCosBanner();
            }
            tyAreaPresenter.showTYAreaList(url);
        }
    });
    if (url.equals(Constants.JUMPW_COSPLAY_RUL) && isFirstVisible && ListUtils.isEmpty(dataList)) {
        lRecyclerView.forceToRefresh();
    }
}
Also used : TYAreaAdapter(cn.nicolite.palm300heroes.view.adapter.TYAreaAdapter) OnNetWorkErrorListener(com.github.jdsjlzx.interfaces.OnNetWorkErrorListener) Bundle(android.os.Bundle) LinearLayoutManager(android.support.v7.widget.LinearLayoutManager) WebViewActivity(cn.nicolite.palm300heroes.view.activity.WebViewActivity) ImageView(android.widget.ImageView) ITYAreaView(cn.nicolite.palm300heroes.view.iview.ITYAreaView) BindView(butterknife.BindView) LRecyclerView(com.github.jdsjlzx.recyclerview.LRecyclerView) NativeExpressADView(com.qq.e.ads.nativ.NativeExpressADView) View(android.view.View) TYAreaPresenter(cn.nicolite.palm300heroes.presenter.TYAreaPresenter) LRecyclerViewAdapter(com.github.jdsjlzx.recyclerview.LRecyclerViewAdapter) ImageView(android.widget.ImageView) NewsBanner(cn.nicolite.palm300heroes.model.bean.NewsBanner) OnRefreshListener(com.github.jdsjlzx.interfaces.OnRefreshListener) BGABanner(cn.bingoogolapple.bgabanner.BGABanner)

Example 4 with BGABanner

use of cn.bingoogolapple.bgabanner.BGABanner in project BGARefreshLayout-Android by bingoogolapple.

the class ViewPagerActivity method initBanner.

private void initBanner() {
    mBanner.setAdapter(new BGABanner.Adapter<ImageView, String>() {

        @Override
        public void fillBannerItem(BGABanner banner, ImageView itemView, String model, int position) {
            Glide.with(itemView.getContext()).load(model).apply(new RequestOptions().placeholder(R.mipmap.holder).error(R.mipmap.holder).dontAnimate()).thumbnail(0.1f).into(itemView);
        }
    });
    App.getInstance().getEngine().getBannerModel().enqueue(new Callback<BannerModel>() {

        @Override
        public void onResponse(Call<BannerModel> call, Response<BannerModel> response) {
            BannerModel bannerModel = response.body();
            mBanner.setData(R.layout.view_image, bannerModel.imgs, bannerModel.tips);
        }

        @Override
        public void onFailure(Call<BannerModel> call, Throwable t) {
        }
    });
}
Also used : RequestOptions(com.bumptech.glide.request.RequestOptions) ImageView(android.widget.ImageView) BannerModel(cn.bingoogolapple.refreshlayout.demo.model.BannerModel) BGABanner(cn.bingoogolapple.bgabanner.BGABanner)

Example 5 with BGABanner

use of cn.bingoogolapple.bgabanner.BGABanner in project BGARefreshLayout-Android by bingoogolapple.

the class SwipeRecyclerViewActivity method initBanner.

private void initBanner() {
    mBanner.setAdapter(new BGABanner.Adapter<ImageView, String>() {

        @Override
        public void fillBannerItem(BGABanner banner, ImageView itemView, String model, int position) {
            Glide.with(itemView.getContext()).load(model).apply(new RequestOptions().placeholder(R.mipmap.holder).error(R.mipmap.holder).dontAnimate()).thumbnail(0.1f).into(itemView);
        }
    });
    App.getInstance().getEngine().getBannerModel().enqueue(new Callback<BannerModel>() {

        @Override
        public void onResponse(Call<BannerModel> call, Response<BannerModel> response) {
            BannerModel bannerModel = response.body();
            mBanner.setData(R.layout.view_image, bannerModel.imgs, bannerModel.tips);
        }

        @Override
        public void onFailure(Call<BannerModel> call, Throwable t) {
        }
    });
}
Also used : RequestOptions(com.bumptech.glide.request.RequestOptions) ImageView(android.widget.ImageView) BannerModel(cn.bingoogolapple.refreshlayout.demo.model.BannerModel) BGABanner(cn.bingoogolapple.bgabanner.BGABanner)

Aggregations

ImageView (android.widget.ImageView)6 BGABanner (cn.bingoogolapple.bgabanner.BGABanner)6 BannerModel (cn.bingoogolapple.refreshlayout.demo.model.BannerModel)4 RequestOptions (com.bumptech.glide.request.RequestOptions)4 View (android.view.View)3 Bundle (android.os.Bundle)2 LinearLayoutManager (android.support.v7.widget.LinearLayoutManager)2 BindView (butterknife.BindView)2 WebViewActivity (cn.nicolite.palm300heroes.view.activity.WebViewActivity)2 OnRefreshListener (com.github.jdsjlzx.interfaces.OnRefreshListener)2 LRecyclerView (com.github.jdsjlzx.recyclerview.LRecyclerView)2 LRecyclerViewAdapter (com.github.jdsjlzx.recyclerview.LRecyclerViewAdapter)2 NativeExpressADView (com.qq.e.ads.nativ.NativeExpressADView)2 TextView (android.widget.TextView)1 News (cn.nicolite.palm300heroes.model.bean.News)1 NewsBanner (cn.nicolite.palm300heroes.model.bean.NewsBanner)1 NewsPresenter (cn.nicolite.palm300heroes.presenter.NewsPresenter)1 TYAreaPresenter (cn.nicolite.palm300heroes.presenter.TYAreaPresenter)1 ContainerActivity (cn.nicolite.palm300heroes.view.activity.ContainerActivity)1 FightSkillActivity (cn.nicolite.palm300heroes.view.activity.FightSkillActivity)1