如何使用Android实现上拉吸顶效果
这篇文章给大家分享的是有关如何使用Android实现上拉吸顶效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
具体内容如下
效果图
1.home_layout.xml
此布局即可实现上拉标题固定在顶部
<?xmlversion="1.0"encoding="UTF-8"?><RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:rvp="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"xmlns:tl="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/ll_base"android:background="@drawable/bg_f8f8f8"><!--<android.support.v4.widget.SwipeRefreshLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content">--><!--中间内容--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"><FrameLayoutandroid:focusableInTouchMode="true"android:focusable="true"android:layout_width="match_parent"android:visibility="gone"android:layout_height="205dp"><com.broker.liming.banner.view.BannerBgContainerandroid:id="@+id/banner_bg_container"android:layout_width="match_parent"android:layout_height="205dp"/><com.broker.liming.banner.LoopLayoutandroid:id="@+id/loop_layout"android:layout_width="match_parent"android:layout_height="120dp"android:layout_gravity="bottom"android:layout_marginTop="@dimen/lay_85"/></FrameLayout><android.support.design.widget.CoordinatorLayoutandroid:id="@+id/main_content"android:layout_width="match_parent"android:layout_height="wrap_content"><android.support.design.widget.AppBarLayoutandroid:id="@+id/appbar"android:layout_width="match_parent"android:layout_height="wrap_content"app:elevation="0dp"app:layout_behavior="com.broker.liming.widget.AppBarLayoutBehavior"><android.support.design.widget.CollapsingToolbarLayoutandroid:id="@+id/main.collapsing"android:layout_width="match_parent"android:layout_height="wrap_content"app:layout_scrollFlags="scroll|exitUntilCollapsed"><!--android:fitsSystemWindows="true"app:contentScrim="?attr/colorPrimary"app:expandedTitleMarginEnd="64dp"app:expandedTitleMarginStart="48dp"--><!--<android.support.constraint.ConstraintLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:fitsSystemWindows="true"android:scaleType="centerCrop"app:layout_collapseMode="parallax">--><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"android:background="@drawable/bg_f8f8f8"><!--app:layout_constraintTop_toTopOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintBottom_toBottomOf="parent"--><com.jcodecraeer.xrecyclerview.XRecyclerViewandroid:id="@+id/xrv_product"android:nestedScrollingEnabled="false"android:scrollbars="none"android:visibility="visible"/><android.support.v7.widget.RecyclerViewandroid:id="@+id/recycler"android:layout_width="match_parent"android:layout_height="wrap_content"android:visibility="gone"android:overScrollMode="never"/><!--<com.yi.haigou.shop.view.ShopInfoViewandroid:id="@+id/shop_inof_view"android:layout_width="match_parent"android:layout_height="wrap_content"app:layout_constraintTop_toTopOf="parent"/><com.yi.haigou.shop.view.ShopAddressViewandroid:id="@+id/shop_address_view"android:layout_width="match_parent"android:layout_height="wrap_content"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintTop_toTopOf="parent"/>--></RelativeLayout><!--</android.support.constraint.ConstraintLayout>--><android.support.v7.widget.Toolbarandroid:id="@+id/toolbar"android:layout_width="match_parent"android:layout_height="@dimen/lay_60"><!--<android.support.constraint.ConstraintLayout--><!--android:layout_width="match_parent"--><!--android:layout_height="match_parent">--><!--<com.yi.shop.shop.view.ShopSearchBar--><!--android:id="@+id/search_bar_view"--><!--android:layout_width="match_parent"--><!--android:layout_height="wrap_content"--><!--android:background="@drawable/ic_shop_title"--><!--app:layout_constraintTop_toTopOf="parent"/>--><!--</android.support.constraint.ConstraintLayout>--></android.support.v7.widget.Toolbar></android.support.design.widget.CollapsingToolbarLayout></android.support.design.widget.AppBarLayout><!--吸顶tab--><LinearLayoutandroid:id="@+id/ll_tab"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:visibility="gone"app:layout_behavior="@string/appbar_scrolling_view_behavior"><com.broker.liming.widget.SlidingTabLayoutandroid:id="@+id/tl_9"android:layout_width="match_parent"android:layout_height="@dimen/lay_45"android:paddingLeft="12dp"android:paddingRight="12dp"android:layout_marginTop="@dimen/lay_20"tl:tl_indicator_anim_duration="100"tl:tl_indicator_anim_enable="true"tl:tl_indicator_bounce_enable="false"tl:tl_indicator_color="@color/name_1A75FF"tl:tl_indicator_margin_left="2dp"tl:tl_indicator_margin_right="2dp"tl:tl_indicator_tl:tl_textSelectColor="@color/white"tl:tl_textUnselectColor="@color/text_000000"tl:tl_textsize="@dimen/font_13"/><android.support.v4.view.ViewPagerandroid:id="@+id/viewpager"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_marginTop="@dimen/lay_12"/><!--公司信息--><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="vertical"android:layout_alignParentBottom="true"android:visibility="gone"><TextViewandroid:id="@+id/tv_phone"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="@dimen/lay_12"android:layout_marginRight="@dimen/lay_12"android:layout_marginTop="@dimen/lay_34"android:gravity="center"android:text="1569796696"android:textColor="@color/color_c7c7c7"android:textSize="@dimen/font_13"/><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginBottom="@dimen/font_16"android:layout_marginLeft="@dimen/lay_12"android:layout_marginRight="@dimen/lay_12"android:layout_marginTop="@dimen/lay_12"android:gravity="center"><TextViewandroid:id="@+id/tv_email"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textColor="@color/color_c7c7c7"android:textSize="@dimen/font_13"/><ImageViewandroid:id="@+id/iv_copy"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginLeft="@dimen/lay_6"android:background="@mipmap/home_copy"/></LinearLayout></LinearLayout></LinearLayout></android.support.design.widget.CoordinatorLayout></LinearLayout><!--</android.support.v4.widget.SwipeRefreshLayout>--><!--搜索--><RelativeLayoutandroid:id="@+id/rl_top"android:layout_width="match_parent"android:layout_height="@dimen/lay_70"android:background="@color/transparent"android:gravity="bottom"><RelativeLayoutandroid:id="@+id/rl_title"android:layout_width="match_parent"android:layout_height="@dimen/lay_45"android:gravity="center_vertical"android:paddingLeft="@dimen/lay_12"><TextViewandroid:id="@+id/tv_title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerVertical="true"android:layout_marginRight="@dimen/lay_12"android:text="日月保盒"android:textColor="@color/white"android:textSize="@dimen/font_18"android:textStyle="bold"/><LinearLayoutandroid:id="@+id/ll_search"android:layout_width="match_parent"android:layout_height="@dimen/lay_31"android:layout_centerVertical="true"android:layout_marginRight="@dimen/lay_57"android:layout_toRightOf="@+id/tv_title"android:background="@drawable/shape_search_product"android:gravity="center_vertical"><ImageViewandroid:id="@+id/iv_search"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerVertical="true"android:layout_marginLeft="@dimen/lay_12"android:layout_marginRight="@dimen/lay_5"android:background="@mipmap/home_search"/><TextViewandroid:id="@+id/tv_search"android:layout_width="0dp"android:layout_height="wrap_content"android:layout_weight="1"android:ellipsize="end"android:paddingRight="@dimen/lay_12"android:singleLine="true"android:text=""android:textColor="@color/color_c7c7c7"android:textSize="@dimen/lay_14"/></LinearLayout><RelativeLayoutandroid:id="@+id/rl_msg"android:layout_width="wrap_content"android:layout_height="match_parent"android:layout_alignParentRight="true"android:layout_marginEnd="@dimen/lay_12"android:gravity="center_vertical"><ImageViewandroid:id="@+id/iv_msg"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="@dimen/lay_5"android:background="@mipmap/home_message_white"/><TextViewandroid:id="@+id/tv_msgnum"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginStart="11dp"android:layout_marginTop="@dimen/lay_2"android:background="@drawable/yuandianred"android:gravity="center"android:minWidth="14dp"android:paddingLeft="3dp"android:paddingRight="3dp"android:singleLine="true"android:textColor="@android:color/white"android:textSize="@dimen/font_10"android:visibility="visible"/></RelativeLayout></RelativeLayout></RelativeLayout></RelativeLayout>
2.fragment
packagecom.broker.liming.fragment;importandroid.Manifest;importandroid.app.Activity;importandroid.content.ClipData;importandroid.content.ClipboardManager;importandroid.content.Context;importandroid.content.Intent;importandroid.content.pm.PackageInfo;importandroid.content.pm.PackageManager;importandroid.content.res.Configuration;importandroid.content.res.Resources;importandroid.graphics.Color;importandroid.graphics.Point;importandroid.graphics.drawable.ColorDrawable;importandroid.os.Build;importandroid.os.Bundle;importandroid.os.Handler;importandroid.support.annotation.NonNull;importandroid.support.design.widget.AppBarLayout;importandroid.support.design.widget.CoordinatorLayout;importandroid.support.v4.app.ActivityCompat;importandroid.support.v4.app.Fragment;importandroid.support.v4.app.FragmentManager;importandroid.support.v4.app.FragmentPagerAdapter;importandroid.support.v4.app.FragmentTransaction;importandroid.support.v4.content.ContextCompat;importandroid.support.v4.view.ViewPager;importandroid.support.v7.widget.LinearLayoutManager;importandroid.support.v7.widget.RecyclerView;importandroid.support.v7.widget.Toolbar;importandroid.text.Html;importandroid.text.TextUtils;importandroid.util.DisplayMetrics;importandroid.util.Log;importandroid.util.TypedValue;importandroid.view.Display;importandroid.view.Gravity;importandroid.view.MotionEvent;importandroid.view.View;importandroid.view.ViewGroup;importandroid.view.Window;importandroid.view.WindowManager;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.ImageView;importandroid.widget.LinearLayout;importandroid.widget.PopupWindow;importandroid.widget.RelativeLayout;importandroid.widget.TextView;importandroid.widget.Toast;importcom.bigkoo.convenientbanner.ConvenientBanner;importcom.bigkoo.convenientbanner.holder.CBViewHolderCreator;importcom.bigkoo.convenientbanner.listener.OnItemClickListener;importcom.broker.liming.R;importcom.broker.liming.activity.AgreementActivity;importcom.broker.liming.activity.SplashActivity;importcom.broker.liming.activity.WebViewActivity;importcom.broker.liming.adapter.ArticleAdapter;importcom.broker.liming.adapter.HomeAdapter;importcom.broker.liming.api.HttpParams;importcom.broker.liming.api.WebHttpParams;importcom.broker.liming.application.LoadBugClass;importcom.broker.liming.banner.IndicatorLocation;importcom.broker.liming.banner.LoopLayout;importcom.broker.liming.banner.LoopStyle;importcom.broker.liming.banner.OnDefaultImageViewLoader;importcom.broker.liming.banner.bean.BannerInfo;importcom.broker.liming.banner.listener.OnBannerItemClickListener;importcom.broker.liming.banner.view.BannerBgContainer;importcom.broker.liming.base.BaseFragment;importcom.broker.liming.bean.ColorInfo;importcom.broker.liming.bean.CompanyBaseBean;importcom.broker.liming.bean.HeadHomeBean;importcom.broker.liming.bean.HomeBannerBean;importcom.broker.liming.bean.HomeBean;importcom.broker.liming.bean.HomeProductBean;importcom.broker.liming.bean.MineBean;importcom.broker.liming.bean.RecommendListBean;importcom.broker.liming.bean.SettingBean;importcom.broker.liming.bean.UserBean;importcom.broker.liming.bean.UserInfoBean;importcom.broker.liming.college.bean.ArticleClassifyListBean;importcom.broker.liming.college.bean.FaXianListsBean;importcom.broker.liming.college.bean.FindClassifysBean;importcom.broker.liming.college.bean.KaoShiStatussBean;importcom.broker.liming.constant.Constants;importcom.broker.liming.dao.UserBeanDao;importcom.broker.liming.editview.FunctionItem;importcom.broker.liming.editview.SFUtils;importcom.broker.liming.event.ChangXianLogin;importcom.broker.liming.event.ELoginSuccess;importcom.broker.liming.event.EventManager;importcom.broker.liming.event.LongRiskEvent;importcom.broker.liming.event.RefreshHomeArticleEvent;importcom.broker.liming.interf.OnBottomTabReselectListener;importcom.broker.liming.interfaclisetener.ArticleHomeClickLisener;importcom.broker.liming.utils.AccountUtils;importcom.broker.liming.utils.CommonUtils;importcom.broker.liming.utils.DensityUtil;importcom.broker.liming.utils.GsonUtils;importcom.broker.liming.utils.LogUtil;importcom.broker.liming.utils.LogUtil2;importcom.broker.liming.utils.SPUtils;importcom.broker.liming.utils.SobotUtils;importcom.broker.liming.utils.StatusBarUtil;importcom.broker.liming.utils.StringUtil;importcom.broker.liming.utils.ToastUtil;importcom.broker.liming.utils.UIHelper;importcom.broker.liming.utils.Utils;importcom.broker.liming.utils.ViewFindUtils;importcom.broker.liming.viewholder.NetworkImageHolderView;importcom.broker.liming.viewholder.TabViewHolder;importcom.broker.liming.widget.AppBarStateChangeListener;importcom.broker.liming.widget.CustomDialog;importcom.broker.liming.widget.MyScrollView;importcom.broker.liming.widget.OnTabSelectListener;importcom.broker.liming.widget.RecyclerviewScrollLisetener;importcom.broker.liming.widget.SetOnclickInterface;importcom.broker.liming.widget.SlidingTabLayout;importcom.broker.liming.widget.TitleBar;importcom.bumptech.glide.Glide;importcom.bumptech.glide.load.engine.DiskCacheStrategy;importcom.bumptech.glide.load.resource.bitmap.CenterCrop;importcom.bumptech.glide.load.resource.bitmap.RoundedCorners;importcom.bumptech.glide.request.RequestOptions;importcom.google.gson.Gson;importcom.google.gson.JsonArray;importcom.google.gson.JsonElement;importcom.google.gson.JsonParser;importcom.jcodecraeer.xrecyclerview.ProgressStyle;importcom.jcodecraeer.xrecyclerview.XRecyclerView;importcom.scwang.smartrefresh.layout.SmartRefreshLayout;importorg.greenrobot.eventbus.Subscribe;importorg.greenrobot.eventbus.ThreadMode;importorg.json.JSONException;importjava.util.ArrayList;importjava.util.List;importjava.util.Random;importlecho.lib.hellocharts.model.Line;importstaticcom.broker.liming.constant.Constants.flag;importstaticcom.broker.liming.utils.SystemInfoUtils.getScreenWidth;importstaticcom.umeng.socialize.utils.ContextUtil.getPackageName;/***Description:*Creator:Chenqiang*DatePopAdapter:2018/2/24*/publicclassHomeFragmentextendsBaseFragmentimplementsOnBottomTabReselectListener,OnItemClickListener,XRecyclerView.LoadingListener,OnBannerItemClickListener,RecyclerviewScrollLisetener,ArticleHomeClickLisener{publicstaticConvenientBannermConvenientBanner;privateList<HomeBannerBean>mHomePagePlatAdList;privateHomeAdaptermHomeAdapter;privateXRecyclerViewmXrvProduct;privateSmartRefreshLayoutrefreshLayout;privateXRecyclerViewxRecyclerView;privateImageViewiv_center;privateRelativeLayoutrl_wallet;privateRelativeLayoutrl_msg;privateTextViewtv_msgnum;privateHomeBean.PopUpEntitypopUp;privateTitleBarmTitleBar;privateTextViewtv_statusBar_slide;privateBannerBgContainercontainer;privateLoopLayoutloopLayout;privateintimageHeight;privateRelativeLayoutrl_title;privateStringlongRiskUrl;privateStringlongCenterUrl;privateStringlongCenterUrl2;privateStringlongCenterNew;//新版privateStringlongCenterUrl3;publicstaticbooleancanClick;publicstaticbooleancanClick2;privateRelativeLayoutrl_top;privateImageViewiv_search;privateStringcustomerLevel;publicstaticStringflag3;publicstaticStringcertifiedState;publicstaticStringflag2;privateImageViewiv_contact;privateintduration;publicstaticbooleancanClick3;//privateMoveImageiv_contact2;privateTextViewtv_245;privateTextViewtv_247;privateTextViewtv_chang_commit;privateEditTextedit_logoin;privateEditTextedit_screen;privateEditTextedit_riyuebaohe;privateTextViewtv_tinker;privateTextViewtv_title;privateLinearLayoutll_search;privateImageViewiv_msg;privateintposition;privateTextViewtv_search;privateImageViewivBannerHeadBg;privateintcount;privatebooleanisInit=true;privateList<String>bannerList=newArrayList<>();privateList<ColorInfo>colorList=newArrayList<>();privateintmDistanceY;privateLinearLayoutManagerlayoutManager;privateinty;privateintheight;privateStringlocalVersion;privateStringkey;privatePopupWindowpopWindow;privatebooleanhidden2=false;privateSFUtilssfUtils;privateList<FunctionItem>allData;privateList<FunctionItem>selData;privateImageViewiv_back_top;privateStringlocalVersionLoad;privateRecyclerViewrecycler;private/*ViewPagerForScrollView*/ViewPagerviewpager;privateSlidingTabLayouttl_9;privateToolbartoolbar;privateList<String>mTitles=newArrayList<>();privateArrayList<Fragment>mFragments=newArrayList<>();//privateMyPagerAdaptermAdapter;privateFragmentManagerfragmentManager;privateViewpagerview;privateSlidingTabLayouttab_head;privateMyScrollViewscrollowview;privateint[]location2;privateint[]location3;privateintyrecycler;privateTextViewtv_phone;privateTextViewtv_email;privateImageViewiv_copy;privateAppBarLayoutappbar;privateCoordinatorLayoutmain_content;privateCustomDialogdialog;privatebooleanisFirstLay=true;privateList<ArticleClassifyListBean>articleClassifyList;privateLinearLayoutll_tab;privateRelativeLayoutll_base;publicstaticSettingBeansettingBean;privateCompanyBaseBeancompanyBaseBean;privateMyPagerAdaptermAdapter;privatebooleanisRemind=false;//点文章不会到顶部其余都回到顶部privatebooleanisSame=true;//是否有不同tab判断后台增加或者减少tab刷新否者不刷新tab方便记录点击位置privatebooleanisFirstTab=true;//是否第一进入加载第一次进入app时刷新tab不是第一次需判断后台增加或者减少tab刷新否者不刷新tab方便记录点击位置privatebooleanisHoutai=false;privateintappbarState;privatebooleanisOther=false;privatebooleanisRemindTrue=false;@OverrideprotectedintgetContentView(){//加载系统默认设置,字体不随用户设置变化Resourcesres=mContext.getResources();Configurationconfig=newConfiguration();config.setToDefaults();res.updateConfiguration(config,res.getDisplayMetrics());returnR.layout./*fragment_home*/home_fragment_two;}@OverrideprotectedvoidinitTitleBar(Viewview){//mTitleBar=(TitleBar)view.findViewById(R.id.title_bar);//mTitleBar.setTitle("");//setStateBar();//mTitleBar.setTitleBarBg(android.R.color.transparent);/*mTitleBar.setLeftBackground(R.mipmap.home_left);mTitleBar.setLeftClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){if(!isLogin()){UIHelper.showLogin(mContext);return;}UserBeanquery=UserBeanDao.query();UIHelper.showInvite(mContext,WebHttpParams.showInviting(query.customerImageUrl));//ToastUtil.showToast(mContext,"分享");//((BaseActivity)getActivity())//.getShareAction("","","","").open();}});mTitleBar.setRightBackground(R.mipmap.home_right);mTitleBar.setRightClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){if(!isLogin()){UIHelper.showLogin(mContext);return;}UIHelper.showWebView(mContext,WebHttpParams.showMyNews());}});mTitleBar.setTitleBarBg(android.R.color.transparent);*/iv_search=(ImageView)view.findViewById(R.id.iv_search);//rl_wallet=(RelativeLayout)view.findViewById(R.id.rl_wallet);//rl_wallet.setOnClickListener(newView.OnClickListener(){//@Override//publicvoidonClick(Viewview){//if(!isLogin()){//UIHelper.showLogin(mContext);//return;//}////UserBeanquery=UserBeanDao.query();//if(AccountUtils.isAuthentication(query.certifiedState)){//UIHelper.showMyWallet(mContext);//}else{//UIHelper.showWebView(mContext,WebHttpParams.showCredentials());//}//}//});rl_msg=(RelativeLayout)view.findViewById(R.id.rl_msg);rl_msg.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){if(!isLogin()){UIHelper.showLogin(mContext);return;}UIHelper.showWebView2(mContext,WebHttpParams.showMyNews());}});tv_msgnum=(TextView)view.findViewById(R.id.tv_msgnum);//iv_center=(ImageView)view.findViewById(R.id.iv_center);/*Animationanim=AnimationUtils.loadAnimation(mContext,R.anim.rotate);LinearInterpolatorlir=newLinearInterpolator();//设置插入器(线性匀速)anim.setInterpolator(lir);iv_center.startAnimation(anim);*///iv_center.setVisibility(View.VISIBLE);//Animationanim=newRotateAnimation(0f,360f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);//anim.setFillAfter(true);//设置保持动画最后的状态//anim.setDuration(10000);//设置动画时间//anim.setInterpolator(newLinearInterpolator());//设置插入器(线性匀速)//mTitleBar.startAnimation(anim);}@OverridepublicvoidinitView(Viewview){//setFullScreen();//changeStatusBarTextColor(true);//BarUtils.setColorNoTranslucent(getActivity(),getResources().getColor(R.color.transparent));//BarUtils.setRootViewFitsSystemWindows(getActivity(),false);////此方法上下状态栏都透明,状态栏字体颜色为黑色//BarUtils.setTranslucentForCoordinatorLayout(getActivity(),0);pagerview=view;StatusBarUtil.setTranslucentStatus(getActivity());StatusBarUtil.setStatusBarDarkTheme(getActivity(),false);if(!EventManager.isRegistered(this)){EventManager.register(this);}tv_tinker=(TextView)view.findViewById(R.id.tv_tinker);tv_245=(TextView)view.findViewById(R.id.tv_245);tv_247=(TextView)view.findViewById(R.id.tv_247);tv_chang_commit=(TextView)view.findViewById(R.id.tv_chang_commit);edit_logoin=(EditText)view.findViewById(R.id.edit_logoin);edit_screen=(EditText)view.findViewById(R.id.edit_screen);edit_riyuebaohe=(EditText)view.findViewById(R.id.edit_riyuebaohe);tv_title=(TextView)view.findViewById(R.id.tv_title);ll_search=(LinearLayout)view.findViewById(R.id.ll_search);iv_msg=(ImageView)view.findViewById(R.id.iv_msg);rl_top=(RelativeLayout)view.findViewById(R.id.rl_top);iv_contact=(ImageView)view.findViewById(R.id.iv_contact);tv_search=(TextView)view.findViewById(R.id.tv_search);iv_back_top=(ImageView)view.findViewById(R.id.iv_back_top);recycler=(RecyclerView)view.findViewById(R.id.recycler);//refreshLayout=(SmartRefreshLayout)view.findViewById(R.id.refreshLayout);viewpager=(ViewPager)view.findViewById(R.id.viewpager);tl_9=(SlidingTabLayout)view.findViewById(R.id.tl_9);toolbar=(Toolbar)view.findViewById(R.id.toolbar);appbar=(AppBarLayout)view.findViewById(R.id.appbar);//tab_head=(SlidingTabLayout)view.findViewById(R.id.tab_head);//scrollowview=(MyScrollView)view.findViewById(R.id.scrollowview);tv_phone=(TextView)view.findViewById(R.id.tv_phone);tv_email=(TextView)view.findViewById(R.id.tv_email);iv_copy=(ImageView)view.findViewById(R.id.iv_copy);main_content=(CoordinatorLayout)view.findViewById(R.id.main_content);ll_tab=(LinearLayout)view.findViewById(R.id.ll_tab);ll_base=(RelativeLayout)view.findViewById(R.id.ll_base);edit_riyuebaohe.setText(flag+"");tv_title.setTextColor(mContext.getResources().getColor(R.color.white));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.yuanjiao24whire));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_white));rl_top.setBackgroundColor(Color.argb((int)0,255,255,255));//AGB由相关工具获得,或者美工提供ArticleHomeFragment.setScrollListener(this);ArticleHomeFragment.setArticleListener(this);Constants.isHoutai=false;mAdapter=newMyPagerAdapter(getActivity().getSupportFragmentManager());mXrvProduct=(XRecyclerView)view.findViewById(R.id.xrv_product);mXrvProduct.setLoadingMoreEnabled(false);mXrvProduct.setPullRefreshEnabled(true);mXrvProduct.setLoadingListener(this);mXrvProduct.setArrowImageView(R.mipmap.iconfont_downgrey);mXrvProduct.setRefreshProgressStyle(ProgressStyle.SysProgress);mXrvProduct.setNestedScrollingEnabled(true);finalViewheaderView=mInflater.inflate(R.layout.fragment_home_banner/*fragmen_home_header*/,(ViewGroup)view.findViewById(android.R.id.content),false);LinearLayout.LayoutParamslayoutParams=newLinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT);layoutParams.gravity=Gravity.CENTER_HORIZONTAL;headerView.setLayoutParams(layoutParams);container=(BannerBgContainer)headerView.findViewById(R.id.banner_bg_container);loopLayout=(LoopLayout)headerView.findViewById(R.id.loop_layout);//状态栏高度intstatusBarHeight=0;intresourceId=getResources().getIdentifier("status_bar_height","dimen","android");if(resourceId>0){statusBarHeight=getResources().getDimensionPixelSize(resourceId);}//屏幕高度DisplayMetricsdm=mContext.getApplicationContext().getResources().getDisplayMetrics();finalfloatscale=dm.density;inti=(int)(54*scale+0.5f)+DensityUtil.dp2px(100);////获取当前控件的布局对象ViewGroup.LayoutParamsparams=(ViewGroup.LayoutParams)container.getLayoutParams();params.width=getScreenWidth();//设置当前控件布局的宽度params.height=getScreenWidth()*1/2;//设置当前控件布局的高度container.setLayoutParams(params);//将设置好的布局参数应用到控件中layoutManager=newLinearLayoutManager(mContext,LinearLayoutManager.VERTICAL,false);mXrvProduct.setLayoutManager(layoutManager);mXrvProduct.addHeaderView(headerView);mHomeAdapter=newHomeAdapter(mContext,getActivity().getSupportFragmentManager(),getActivity(),dm.heightPixels-statusBarHeight-i+DensityUtil.dip2px(mContext,50));mXrvProduct.setAdapter(mHomeAdapter);//设置轮播图属性loopLayout.setLoop_ms(4000);//轮播的速度(毫秒)loopLayout.setLoop_duration(400);//滑动的速率(毫秒)loopLayout.setScaleAnimation(false);//设置是否需要动画loopLayout.setLoop_style(LoopStyle.Empty);//轮播的样式-默认emptyloopLayout.setIndicatorLocation(IndicatorLocation.Center);//指示器位置-中CenterloopLayout.initializeData(mContext);//设置监听loopLayout.setOnLoadImageViewListener(newOnDefaultImageViewLoader(){@OverridepublicvoidonLoadImageView(ImageViewview,Objectobject,intpoint){/*Glide.with(view.getContext()).load(object).into(view);*/Glide.with(mContext).load(object).apply(newRequestOptions().transforms(newCenterCrop(),newRoundedCorners(DensityUtil.dp2px(12)))).into(view);LogUtil2.log("position--"+point+"");}});loopLayout.setOnBannerItemClickListener(this);setScroll();RequestOptionsoptions=newRequestOptions().diskCacheStrategy(DiskCacheStrategy.RESOURCE);//只缓存最终的图片//!isDestroy(getActivity()if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.jingzhi)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.apply(options).into(iv_contact);}iv_contact.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){if(!AccountUtils.isLogin()){UIHelper.showLogin(mContext);return;}SobotUtils.startSobot(getActivity());}});if(Build.VERSION.SDK_INT>Build.VERSION_CODES.P){RelativeLayout.LayoutParamslayoutParams2=(RelativeLayout.LayoutParams)rl_top.getLayoutParams();layoutParams2.height=dip2px(getActivity(),80);rl_top.setLayoutParams(layoutParams2);}else{RelativeLayout.LayoutParamslayoutParams2=(RelativeLayout.LayoutParams)rl_top.getLayoutParams();layoutParams2.height=dip2px(getActivity(),70);rl_top.setLayoutParams(layoutParams2);}imageHeight=dip2px(getActivity(),200);rl_title=(RelativeLayout)view.findViewById(R.id.rl_title);initListeners();}publicvoidsetScroll(){main_content.setOnTouchListener(newView.OnTouchListener(){@OverridepublicbooleanonTouch(Viewv,MotionEventevent){switch(event.getAction()){caseMotionEvent.ACTION_DOWN:Log.i("滚动高度--tt","按下");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong2)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);newHandler().postDelayed(newRunnable(){@Overridepublicvoidrun(){Glide.with(getActivity()).load(R.mipmap.jingzhi)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}},1500);}break;caseMotionEvent.ACTION_MOVE:Log.i("滚动高度--tt","移动");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}break;caseMotionEvent.ACTION_UP:Log.i("滚动高度--tt","抬起");break;}returnfalse;}});appbar.addOnOffsetChangedListener(newAppBarStateChangeListener(){@OverridepublicvoidonStateChanged(AppBarLayoutappBarLayout,Statestate){if(state==State.EXPANDED){Log.i("滚动高度--","展开");}elseif(state==State.COLLAPSED){Log.i("滚动高度--","折叠");setpopLoad();}else{Log.i("滚动高度--","中间");}}});appbar.addOnOffsetChangedListener(newAppBarLayout.OnOffsetChangedListener(){@OverridepublicvoidonOffsetChanged(AppBarLayoutappBarLayout,inti){height=dip2px(mContext,170);y=Math.abs(i);intalpha=255*y/(height);if(alpha>255){alpha=255;}if(alpha<5){alpha=0;}LogUtil2.log("滑动高度--off"+y+"--"+height+"--");if(y<=height){tv_title.setTextColor(mContext.getResources().getColor(R.color.white));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.yuanjiao24whire));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_white));rl_top.setBackgroundColor(Color.argb((int)0,255,255,255));//AGB由相关工具获得,或者美工提供StatusBarUtil.setStatusBarDarkTheme(getActivity(),false);}elseif(y>height&&y<height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));rl_top.setBackgroundColor(Color.argb((int)127,255,255,255));StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}elseif(y>height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(Color.argb((int)255,255,255,255));StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}}});mXrvProduct.addOnScrollListener(newRecyclerView.OnScrollListener(){@OverridepublicvoidonScrolled(@NonNullRecyclerViewrecyclerView,intdx,intdy){super.onScrolled(recyclerView,dx,dy);LinearLayoutManagermanager=(LinearLayoutManager)recyclerView.getLayoutManager();//获取当前可见条目得索引intfirstVisibleItemPosition=manager.findFirstVisibleItemPosition();intlastVisibleItemPosition=manager.findLastCompletelyVisibleItemPosition();//获取当前可见条目得itemViewViewfirstView=manager.findViewByPosition(firstVisibleItemPosition);//获取当前可见条目得itemView得高度height=firstView.getHeight();//获取当前可见条目得偏移量y=(firstVisibleItemPosition)*height-firstView.getTop();intalpha=255*y/(height);if(alpha>255){alpha=255;}if(alpha<5){alpha=0;}floatscale=(float)dy/height;floatalphat=(255*scale);LogUtil2.log("滑动高度--"+y+"--"+height+"--");if(y==height){tv_title.setTextColor(mContext.getResources().getColor(R.color.white));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.yuanjiao24whire));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_white));rl_top.setBackgroundColor(Color.argb((int)0,255,255,255));//AGB由相关工具获得,或者美工提供StatusBarUtil.setStatusBarDarkTheme(getActivity(),false);}elseif(y>height&&y<height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));rl_top.setBackgroundColor(Color.argb((int)127,255,255,255));StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}elseif(y>height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(Color.argb((int)255,255,255,255));StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}}});}publicvoidsetpopLoad(){try{localVersionLoad=Utils.getVersionName(mContext);}catch(Exceptione){e.printStackTrace();}key="show_home_load"+localVersion;LogUtil2.log("=========================>>>key"+key);LogUtil2.log("=========================>>>AccountUtils.getVersioncode()"+AccountUtils.getVersioncode());//是否是安装的第一次if(!AccountUtils.getVersioncodeHomeLoad().equals(key)){AccountUtils.putVersioncodeHomeLoad(key);dialog=newCustomDialog(mContext,R.layout.pop_home_load,R.style.CustomDialogTheme);dialog.setCancelable(false);dialog.setCanceledOnTouchOutside(false);ImageViewiv_one_button=(ImageView)dialog.findViewById(R.id.iv_one_button);iv_one_button.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){//TODOAuto-generatedmethodstubdialog.dismiss();}});dialog.show();}}privatevoidchangeStatusBarTextColor(booleanisBlack){if(Build.VERSION.SDK_INT>Build.VERSION_CODES.M){if(isBlack){getActivity().getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);//设置状态栏黑色字体}else{getActivity().getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);//恢复状态栏白色字体}}}/***判断是否是全面屏*/privatevolatilestaticbooleanmHasCheckAllScreen;privatevolatilestaticbooleanmIsAllScreenDevice;publicstaticbooleanisAllScreenDevice(Contextcontext){if(mHasCheckAllScreen){returnmIsAllScreenDevice;}mHasCheckAllScreen=true;mIsAllScreenDevice=false;//低于API21的,都不会是全面屏。。。if(Build.VERSION.SDK_INT<Build.VERSION_CODES.LOLLIPOP){returnfalse;}WindowManagerwindowManager=(WindowManager)context.getSystemService(Context.WINDOW_SERVICE);if(windowManager!=null){Displaydisplay=windowManager.getDefaultDisplay();Pointpoint=newPoint();display.getRealSize(point);floatwidth,height;if(point.x<point.y){width=point.x;height=point.y;}else{width=point.y;height=point.x;}if(height/width>=1.97f){mIsAllScreenDevice=true;}}returnmIsAllScreenDevice;}privateintdip2px(Contextcontext,floatdipValue){Resourcesr=context.getResources();return(int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,dipValue,r.getDisplayMetrics());}//判断Activity是否DestroypublicstaticbooleanisDestroy(Activityactivity){if(activity==null||activity.isFinishing()||(Build.VERSION.SDK_INT>=Build.VERSION_CODES.JELLY_BEAN_MR1&&activity.isDestroyed())){returntrue;}else{returnfalse;}}privatevoidinitListeners(){mXrvProduct.addOnScrollListener(newRecyclerView.OnScrollListener(){@OverridepublicvoidonScrollStateChanged(RecyclerViewrecyclerView,intnewState){super.onScrollStateChanged(recyclerView,newState);switch(newState){case0:LogUtil2.log("recyclerview已经停止滚动");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong2)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);newHandler().postDelayed(newRunnable(){@Overridepublicvoidrun(){Glide.with(getActivity()).load(R.mipmap.jingzhi)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}},1500);}//Glide.with(getActivity()).load(R.mipmap.jingzhi).asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE).into(iv_contact);break;case1:LogUtil2.log("recyclerview正在被拖拽");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}break;case2:LogUtil2.log("recyclerview正在依靠惯性滚动");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}break;}}@OverridepublicvoidonScrolled(RecyclerViewrecyclerView,intdx,intdy){super.onScrolled(recyclerView,dx,dy);}});}@OverridepublicvoidinitData(){super.initData();}@OverridepublicvoidonResume(){super.onResume();}/***IMEI全称�?InternationalMobileEquipmentIdentity,中文翻译为国际移动装备辨识码,即�?常所说的手机序列号,*用于在手机网络中识别每一部独立的手机,是国际上公认的手机标志序号,相当于移动电话的身份证。序列号共有15位数字,�?位(TAC)是型号核准号码�?*代表手机类型。接�?位(FAC)是�?��装配号,代表产地。后6位(SNR)是串号,代表生产顺序号。最�?位(SP)一般为0,是�?��码,备用�?*国际移动装备辨识码一般贴于机身背面与外包装上,同时也存在于手机记忆体中,通过输入*#06#即可查询�?**@param*@return*/@OverridepublicvoidonHiddenChanged(booleanhidden){super.onHiddenChanged(hidden);if(!hidden){hidden2=hidden;LogUtil2.log("==========================>>>onHiddenChangedHome"+hidden);loopLayout.stopLoop();//页面销毁时需要停止loopLayout.startLoop();StatusBarUtil.setTranslucentStatus(getActivity());if(y<=height){tv_title.setTextColor(mContext.getResources().getColor(R.color.white));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.yuanjiao24whire));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_white));rl_top.setBackgroundColor(Color.argb((int)0,255,255,255));//AGB由相关工具获得,或者美工提供StatusBarUtil.setStatusBarDarkTheme(getActivity(),false);}elseif(y>height&&y<height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));rl_top.setBackgroundColor(Color.argb((int)127,255,255,255));//changeStatusBarTextColor(false);//BarUtils.setColorNoTranslucent(getActivity(),getResources().getColor(R.color.transparent));//BarUtils.setRootViewFitsSystemWindows(getActivity(),false);StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}elseif(y>height*1.5){rl_top.setBackgroundColor(mContext.getResources().getColor(R.color.white));tv_title.setTextColor(mContext.getResources().getColor(R.color.text_000000));ll_search.setBackground(mContext.getResources().getDrawable(R.drawable.shape_search_product));iv_msg.setBackground(mContext.getResources().getDrawable(R.mipmap.home_message_black));rl_top.setBackgroundColor(Color.argb((int)255,255,255,255));//changeStatusBarTextColor(true);//BarUtils.setColorNoTranslucent(getActivity(),getResources().getColor(R.color.transparent));//BarUtils.setRootViewFitsSystemWindows(getActivity(),false);StatusBarUtil.setStatusBarDarkTheme(getActivity(),true);}}else{hidden2=hidden;LogUtil2.log("==========================>>>onHiddenChanged"+hidden);loopLayout.stopLoop();//页面销毁时需要停止mHomeAdapter.setIsStop(true);}}@OverridepublicvoidonRequestPermissionsResult(intrequestCode,Stringpermissions[],int[]grantResults){if(requestCode==1000){if((grantResults.length>0)&&(grantResults[0]==PackageManager.PERMISSION_GRANTED)){UserBeanquery=UserBeanDao.query();}else{Toast.makeText(mContext,"手机IMEI权限未开启!",Toast.LENGTH_LONG).show();}}}publicbooleancheckIme(){intpermissionCheck=ContextCompat.checkSelfPermission(mContext,Manifest.permission.READ_PHONE_STATE);if(permissionCheck!=PackageManager.PERMISSION_GRANTED){ActivityCompat.requestPermissions((Activity)mContext,newString[]{Manifest.permission.READ_PHONE_STATE},1000);returnfalse;}else{//TODOreturntrue;}}@OverrideprotectedvoidinitListener(){super.initListener();iv_back_top.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){appbar.setExpanded(true,false);iv_back_top.setVisibility(View.GONE);EventManager.post(newRefreshHomeArticleEvent());}});ll_search.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewview){if(!isLogin()){UIHelper.showLogin(mContext);return;}UIHelper.showProductSearch(mContext);}});}@OverrideprotectedvoidonSuccess(Stringresponse,intid){super.onSuccess(response,id);switch(id){case100:LogUtil2.log("=========================>>>100"+response.toString());mXrvProduct.refreshComplete();//refreshLayout.finishRefresh(2000/*,false*/);//传入false表示刷新失败HomeBeanhomeBean=GsonUtils.toObject(response,HomeBean.class);mHomePagePlatAdList=homeBean.homePagePlatAdList;if(null!=mHomePagePlatAdList&&!mHomePagePlatAdList.isEmpty()){setBannerLoop(mHomePagePlatAdList);}break;case600://精选产品setRecommendData(response);break;case700:LogUtil2.log("=========================>>>700"+response.toString());setHomeBeanADV(response);break;case800://提醒中心setHomeBeanRemind(response);break;case601://云学院推荐橱窗列表setRecommendDatas(response);break;case603:RecommendListBeanrecommendListBean=GsonUtils.toObject(response,RecommendListBean.class);if(recommendListBean.recommendList!=null){if(recommendListBean.recommendList.size()>0){tv_search.setText(recommendListBean.recommendList.get(0));}}break;case604://滚动头条LogUtil2.log("首页文章--滚动条"+response.toString());setHomeAdviance(response);break;case605://文章标题LogUtil2.log("首页文章--文章标题"+response.toString());ll_tab.setVisibility(View.VISIBLE);setHomeArticle(response);break;}}privatevoidsetHomeArticle(Stringresponse){if(TextUtils.isEmpty(response)){return;}finalFindClassifysBeanbean=GsonUtils.toObject(response,FindClassifysBean.class);if(bean!=null){if(!isFirstTab){if(articleClassifyList!=null&&bean.articleClassifyList.size()==articleClassifyList.size()){for(inti=0;i<bean.articleClassifyList.size();i++){for(intj=0;j<articleClassifyList.size();j++){if(bean.articleClassifyList.get(i).uuid.equals(articleClassifyList.get(j).uuid)){isSame=false;}}}}}LogUtil2.log("第一次加载--"+isSame+"---"+isFirstTab+"--"+isRemind+"---"+isHoutai);if(isRemind){isRemind=false;if(!isSame){isSame=true;return;}}else{appbar.setExpanded(true,false);iv_back_top.setVisibility(View.GONE);}}isFirstTab=false;articleClassifyList=bean.articleClassifyList;//mHomeAdapter.setHomeArticle(bean);if(bean.articleClassifyList!=null&&bean.articleClassifyList.size()>0){mFragments.clear();mTitles.clear();for(inti=0;i<bean.articleClassifyList.size();i++){ArticleClassifyListBeanbean2=bean.articleClassifyList.get(i);mTitles.add(bean2.name);Bundleb=newBundle();b.putSerializable("bean",bean.articleClassifyList.get(i));b.putInt("positionClick",i);b.putSerializable("company",companyBaseBean);Fragmentf=newArticleHomeFragment()/*ArticleHomeFragment()*/;f.setArguments(b);mFragments.add(f);}if(getActivity()!=null){viewpager.setAdapter(mAdapter);tl_9.setViewPager(viewpager,mTitles);tl_9.setCurrentTab(0);viewpager.setCurrentItem(0);setTab();if(!isFirstLay){LogUtil2.log("刷新--");mAdapter.setNewFragments();}isFirstLay=false;}}}@OverridepublicvoidonPause(){super.onPause();Log.i("滚动高度--onPause","展开");}@OverridepublicvoidonStop(){super.onStop();Log.i("滚动高度--onStop","展开");if(isRemind){isOther=true;}if(appbarState==1){Log.i("滚动高度--","展开");//展开状态}elseif(appbarState==2){Log.i("滚动高度--","折叠");//折叠状态}elseif(appbarState==3){Log.i("滚动高度--","中间");//中间状态}}publicvoidsetTab(){tl_9.setTextUnselectColor(getResources().getColor(R.color.text_000000));tl_9.setTextSelectColor(getResources().getColor(R.color.white));tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_1A75FF));tl_9.setOnTabSelectListener(newOnTabSelectListener(){@OverridepublicvoidonTabSelect(intposition){if(position%9==0){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_1A75FF));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_1A75FF));}elseif(position%9==1){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_F05F12));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_F05F12));}elseif(position%9==2){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_DD8033));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_DD8033));}elseif(position%9==3){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_14BEDF));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_14BEDF));}elseif(position%9==4){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_2B2EF5));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_2B2EF5));}elseif(position%9==5){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_EEB01F));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_EEB01F));}elseif(position%9==6){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_E92A4B));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_E92A4B));}elseif(position%9==7){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_00C99E));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_00C99E));}elseif(position%9==8){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_299BF5));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_299BF5));}}@OverridepublicvoidonTabReselect(intposition){}});viewpager.setOnPageChangeListener(newViewPager.OnPageChangeListener(){@OverridepublicvoidonPageScrolled(inti,floatv,inti1){}@OverridepublicvoidonPageSelected(intposition){//tab_head.setCurrentTab(position);//if(!isFirstLay){if(mFragments!=null&&mFragments.size()>0&&articleClassifyList!=null&&articleClassifyList.size()>0){ArticleHomeFragmentfragment=(ArticleHomeFragment)mFragments.get(position);fragment.setRefresh(position,articleClassifyList.get(position));}//}//if(position%9==0){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_1A75FF));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_1A75FF));}elseif(position%9==1){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_F05F12));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_F05F12));}elseif(position%9==2){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_DD8033));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_DD8033));}elseif(position%9==3){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_14BEDF));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_14BEDF));}elseif(position%9==4){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_2B2EF5));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_2B2EF5));}elseif(position%9==5){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_EEB01F));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_EEB01F));}elseif(position%9==6){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_E92A4B));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_E92A4B));}elseif(position%9==7){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_00C99E));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_00C99E));}elseif(position%9==8){tl_9.setIndicatorColor(mContext.getResources().getColor(R.color.name_299BF5));//tab_head.setIndicatorColor(mContext.getResources().getColor(R.color.name_299BF5));}}@OverridepublicvoidonPageScrollStateChanged(inti){}});}@OverridepublicvoidonClickArticle(booleanisremind){LogUtil2.log("isRemind----"+isremind);isRemind=isremind;}privateclassMyPagerAdapterextendsFragmentPagerAdapter{privateList<String>tags;//标示fragment的tagprivateFragmentManagerfragmentManager;publicMyPagerAdapter(FragmentManagerfm){super(fm);this.tags=newArrayList<>();this.fragmentManager=fm;}//publicMyPagerAdapter(FragmentManagerfm){//super(fm);//}@OverridepublicintgetCount(){returnmFragments.size();}@OverridepublicCharSequencegetPageTitle(intposition){returnmTitles.get(position);}@OverridepublicFragmentgetItem(intposition){returnmFragments.get(position);}@OverridepublicintgetItemPosition(@NonNullObjectobject){returnPOSITION_NONE;}//这个就不说了privateStringmakeFragmentName(intviewId,longid){return"android:switcher:"+viewId+":"+id;}@NonNull@OverridepublicObjectinstantiateItem(@NonNullViewGroupcontainer,intposition){tags.add(makeFragmentName(container.getId(),getItemId(position)));Fragmentfragment=(Fragment)super.instantiateItem(container,position);this.fragmentManager.beginTransaction().show(fragment).commitAllowingStateLoss();returnfragment;}//根据tag查找缓存的fragment,移除缓存的fragment,替换成新的publicvoidsetNewFragments(){if(this.tags!=null){FragmentTransactionfragmentTransaction=fragmentManager.beginTransaction();for(inti=0;i<tags.size();i++){fragmentTransaction.remove(fragmentManager.findFragmentByTag(tags.get(i)));}fragmentTransaction.commitAllowingStateLoss();fragmentManager.executePendingTransactions();tags.clear();}notifyDataSetChanged();}}privatevoidsetBannerLoop(List<HomeBannerBean>mHomePagePlatAdList){//准备数据ArrayList<BannerInfo>bannerInfos=newArrayList<>();List<String>bgList=newArrayList<>();for(inti=0;i<mHomePagePlatAdList.size();i++){bannerInfos.add(newBannerInfo(mHomePagePlatAdList.get(i).imageUrl,mHomePagePlatAdList.get(i).url));bgList.add(mHomePagePlatAdList.get(i).imageColour);}if(bannerInfos.size()==0){return;}if(bgList.size()==0){return;}loopLayout.setLoopData(bannerInfos);//设置轮播数据if(bgList!=null&&mContext!=null){container.setBannerBackBg(mContext,bgList);//背景容器设置轮播图片}loopLayout.setBannerBgContainer(container);loopLayout.stopLoop();loopLayout.startLoop();}privatevoidsetRecommendDatas(Stringresponse){if(TextUtils.isEmpty(response)){return;}FaXianListsBeanbean=GsonUtils.toObject(response,FaXianListsBean.class);//KeChengRecommendsBeanrecommendsBean=bean.courseRecommends.get(0);mHomeAdapter.setHomeKeCheng(bean);}publicstatic<T>List<T>getObjectList(StringjsonString,Class<T>cls){List<T>list=newArrayList<T>();try{Gsongson=newGson();JsonArrayarry=newJsonParser().parse(jsonString).getAsJsonArray();for(JsonElementjsonElement:arry){list.add(gson.fromJson(jsonElement,cls));}}catch(Exceptione){e.printStackTrace();}returnlist;}privatevoidsetRecommendData(Stringresponse){if(TextUtils.isEmpty(response)){return;}HomeProductBeanhomeProductBean=GsonUtils.toObject(response,HomeProductBean.class);//List<HomeBottomProductBean>homeBean=/*GsonUtils.toList*/getObjectList(response,HomeBottomProductBean.class);mHomeAdapter.setHomeBean(homeProductBean);}privatevoidsetHomeBeanADV(Stringresponse){HomeBeanhomeBean2=GsonUtils.toObject(response,HomeBean.class);mHomeAdapter.setHomeBeanADV(homeBean2);}privatevoidsetHomeBeanRemind(Stringresponse){if(TextUtils.isEmpty(response)){return;}finalKaoShiStatussBeanbean=GsonUtils.toObject(response,KaoShiStatussBean.class);mHomeAdapter.setHomeRemind(bean);}privatevoidsetHomeAdviance(Stringresponse){if(TextUtils.isEmpty(response)){return;}finalHeadHomeBeanbean=GsonUtils.toObject(response,HeadHomeBean.class);mHomeAdapter.setHomeAdviance(bean);}@OverridepublicvoidonTabReselect(){LogUtil.e(LogUtil.CQ,"onTabReselectHomeFragment");}/***生成一个0到count之间的随机数**@paramendNum*@return*/publicintgetNum(intendNum){if(endNum>0){Randomrandom=newRandom();returnrandom.nextInt(endNum);}return0;}/***banner点击事件**@parampositionposition*/@OverridepublicvoidonItemClick(intposition){}@OverridepublicvoidonDestroy(){super.onDestroy();EventManager.unregister(this);loopLayout.stopLoop();//页面销毁时需要停止mHomeAdapter.setIsStop(true);if(iv_contact!=null&&!getActivity().isDestroyed()){Glide.with(getContext()).clear(iv_contact);iv_contact=null;}}@OverridepublicvoidonDestroyView(){super.onDestroyView();}publicstaticSetOnclickInterfacelistenersTOP;@OverridepublicvoidonRefresh(){}@OverridepublicvoidonLoadMore(){}/***banner滚动轮播**@paramposition*@parambanner*/@OverridepublicvoidonBannerClick(intposition,ArrayList<BannerInfo>banner){}@OverridepublicvoidonChildScroll(RecyclerViewrecyclerView,intnewState){switch(newState){case0:LogUtil2.log("recyclerview已经停止滚动");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong2)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);newHandler().postDelayed(newRunnable(){@Overridepublicvoidrun(){Glide.with(getActivity()).load(R.mipmap.jingzhi)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}},1500);}break;case1:LogUtil2.log("recyclerview正在被拖拽");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}break;case2:LogUtil2.log("recyclerview正在依靠惯性滚动");if(getActivity()!=null){Glide.with(getActivity()).load(R.mipmap.huadong)/*.asGif().diskCacheStrategy(DiskCacheStrategy.SOURCE)*/.into(iv_contact);}break;}}}
感谢各位的阅读!关于“如何使用Android实现上拉吸顶效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。