在Fragment中加上它

 @Override
public void onAttach(Activity activity) {
super.onAttach(activity);
this.activity = (ShopGradeActivity) activity;

}
package com.mine.project.function.home;


import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.DividerItemDecoration;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.LinearLayout;
import android.widget.Toast;

import com.mine.project.R;
import com.mine.project.common.utils.JAnalyticsUtil;
import com.mine.project.divider.MyDividerItemDecoration;
import com.mine.project.flowlibrary.FlowTagLayout;
import com.mine.project.flowlibrary.OnTagSelectListener;
import com.mine.project.function.activity.ShopGradeActivity;
import com.mine.project.function.activity.UserComplainActivity;
import com.mine.project.function.adapter.PadComplainAdapter;
import com.mine.project.function.adapter.PadGradeAdpter;
import com.mine.project.function.adapter.TagAdapter;
import com.mine.project.function.domain.CommentInfo;
import com.mine.project.function.domain.ComplainInfo;
import com.mine.project.function.domain.PageInfo;
import com.mine.project.home.ui.BaseFragment;
import com.mine.project.network.control.NetWorkListener;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import cn.bingoogolapple.refreshlayout.BGANormalRefreshViewHolder;
import cn.bingoogolapple.refreshlayout.BGARefreshLayout;
import cn.bingoogolapple.refreshlayout.BGARefreshViewHolder;


/**
* A simple {@link Fragment} subclass.
*/
public class TabLayoutFragment extends BaseFragment implements BGARefreshLayout.BGARefreshLayoutDelegate {

public static String TABLAYOUT_FRAGMENT = "tab_fragment";
private int type;
private LinearLayout mLlShapgrade;
private RecyclerView mRv;
private FlowTagLayout mGradeFlowTagLayout;
private CheckBox mChCommentShopgrade;
private TagAdapter mGradeTagAdapter;
private int star1;
private int star2;
private int star3;
private int star4;
private int star5;

private int index_0;
private int index_1;
private int index_2;
private int index_3;
private int index_4;

private String mStartStatus;
private int curPage, curPage1;
private int totalPages, totalPages1;


private boolean mIsChecked = true;
private PadComplainAdapter mPadComplainAdapter;
private BGARefreshLayout mRefreshLayout1;
private ArrayList mArrayList = new ArrayList();
private ArrayList mComplainInfoArrayList = new ArrayList<>();
private PadGradeAdpter mPadGradeAdpter;
private int count1 = new ShopGradeActivity().getCount();
private ShopGradeActivity activity;


public static TabLayoutFragment newInstance(int type) {
TabLayoutFragment fragment = new TabLayoutFragment();
Bundle bundle = new Bundle();
bundle.putSerializable(TABLAYOUT_FRAGMENT, type);
fragment.setArguments(bundle);

return fragment;
}

@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
this.activity = (ShopGradeActivity) activity;

}

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.e("1", "run:--------->count111: " + count1);
if (getArguments() != null) {
type = (int) getArguments().getSerializable(TABLAYOUT_FRAGMENT);
}

}


@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_tab_layout, container, false);
initView(view);
initData();
initSizeData();
return view;
}

private void initData() {
mChCommentShopgrade.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {

if (isChecked) {
PadGrade(mStartStatus + "", isChecked);
Toast.makeText(getActivity(), "只看有内容评论", Toast.LENGTH_SHORT).show();
mIsChecked = isChecked;
mRefreshLayout1.endRefreshing();
Map map = new HashMap();
map.put("value", "有内容评论");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);

} else {
PadGrade(mStartStatus + "", isChecked);
// Toast.makeText(getActivity(), "查看全部评论", Toast.LENGTH_SHORT).show();
mIsChecked = isChecked;
mRefreshLayout1.endRefreshing();
}
}
});


}

protected void initView(View view) {
mChCommentShopgrade = (CheckBox) view.findViewById(R.id.ch_comment_shopgrade);
mGradeFlowTagLayout = (FlowTagLayout) view.findViewById(R.id.size_flow_layout);
mRv = (RecyclerView) view.findViewById(R.id.rv);
// mLvShopgrade = (ListView)view.findViewById(R.id.lv_shopgrade);
mLlShapgrade = (LinearLayout) view.findViewById(R.id.ll_shapgrade);
mRefreshLayout1 = (BGARefreshLayout) view.findViewById(R.id.refresh_layout1);
// 为BGARefreshLayout 设置代理
mRefreshLayout1.setDelegate(this);
// 设置下拉刷新和上拉加载更多的风格 参数1:应用程序上下文,参数2:是否具有上拉加载更多功能
BGARefreshViewHolder refreshViewHolder = new BGANormalRefreshViewHolder(getActivity(), true);
// 设置下拉刷新和上拉加载更多的风格
mRefreshLayout1.setRefreshViewHolder(refreshViewHolder);
// 为了增加下拉刷新头部和加载更多的通用性,提供了以下可选配置选项 -------------START
// 设置正在加载更多时不显示加载更多控件
// mRefreshLayout.setIsShowLoadingMoreView(false);
// 设置正在加载更多时的文本
refreshViewHolder.setLoadingMoreText("正在加载...");
switch (type) {
case 1:
//flase显示所有评论,默认显示有内容评论
PadGrade(null, mIsChecked);
break;
case 2:
PadComplain(1);
mLlShapgrade.setVisibility(View.GONE);
break;

}


}


private void initSizeData() {
//评价动态标签流式布局显示
mGradeTagAdapter = new TagAdapter<>(getActivity());
mGradeFlowTagLayout.setTagCheckedMode(FlowTagLayout.FLOW_TAG_CHECKED_SINGLE);
mGradeFlowTagLayout.setAdapter(mGradeTagAdapter);
mGradeFlowTagLayout.setOnTagSelectListener(new OnTagSelectListener() {
@Override
public void onItemSelect(FlowTagLayout parent, List selectedList) {
if (selectedList != null && selectedList.size() > 0) {
Map map = new HashMap();
for (int i : selectedList) {
switch (i) {
case 0:
PadGrade(index_0 + "", mIsChecked);
mStartStatus = index_0 + "";
map.put("value", "五星评价");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);
break;
case 1:
PadGrade(index_1 + "", mIsChecked);
mStartStatus = index_1 + "";
map.put("value", "四星评价");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);
break;
case 2:
PadGrade(index_2 + "", mIsChecked);
mStartStatus = index_2 + "";
map.put("value", "三星评价");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);
break;
case 3:
PadGrade(index_3 + "", mIsChecked);
mStartStatus = index_3 + "";
map.put("value", "二星评价");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);
break;
case 4:
PadGrade(index_4 + "", mIsChecked);
mStartStatus = index_4 + "";
map.put("value", "一星评价");
JAnalyticsUtil.onCountEvent(mContext, JAnalyticsUtil.DPPFPL, map);
break;

}

}
} else {
Toast.makeText(getActivity(), "没有选择标签", Toast.LENGTH_SHORT).show();
mStartStatus = null;
PadGrade(null, mIsChecked);

}
}
});
netWorkHelper.obtainStoreScoreInfoComment(mContext, new NetWorkListener.ObtainStoreScoreInfoCommentListener() {
@Override
public void onFinish(int score, int pointCount, int starFive, int starFour, int starThree, int starTwo, int starOne) {
star1 = starOne;
star2 = starTwo;
star3 = starThree;
star4 = starFour;
star5 = starFive;
List dataSource1 = new ArrayList<>();
int i = 0;
if (star5 != 0) {
dataSource1.add("5星评价" + "\n" + " " + star5);
i++;
index_0 = 5;
}
if (star4 != 0) {
dataSource1.add("4星评价" + "\n" + " " + star4);
if (i == 0) {
index_0 = 4;
} else {
index_1 = 4;
}
i++;
}
if (star3 != 0) {
dataSource1.add("3星评价" + "\n" + " " + star3);
switch (i) {
case 0:
index_0 = 3;
break;
case 1:
index_1 = 3;
break;
case 2:
index_2 = 3;
break;
}
i++;
}
if (star2 != 0) {
dataSource1.add("2星评价" + "\n" + " " + star2);
switch (i) {
case 0:
index_0 = 2;
break;
case 1:
index_1 = 2;
break;
case 2:
index_2 = 2;
break;
case 3:
index_3 = 2;
break;
}
i++;
}
if (star1 != 0) {
dataSource1.add("1星评价" + "\n" + " " + star1);
switch (i) {
case 0:
index_0 = 1;
break;
case 1:
index_1 = 1;
break;
case 2:
index_2 = 1;
break;
case 3:
index_3 = 1;
break;
case 4:
index_4 = 1;
break;
}
i++;
}

mGradeTagAdapter.onlyAddAll(dataSource1);
}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "网络错误", Toast.LENGTH_SHORT).show();
}
});
// List dataSource = new ArrayList<>();
// StarEntity mStarEntity1 = new StarEntity("1星评价",1);
// dataSource.add(mStarEntity1);
}

//pad评价,true只显示有内容,下拉刷新回调
private void PadGrade(String mLevel, boolean isShowNoComment) {
netWorkHelper.obtainStoreScoreComment(mContext, mLevel, 1, isShowNoComment, new NetWorkListener.ObtainStoreScoreCommentListener() {
@Override
public void onFinish(ArrayList list, PageInfo pageInfo) {
// mLvShopgrade.setAdapter(new ItemPadgradeAdapter(mContext,list));
mArrayList.clear();
mArrayList.addAll(list);
mRv.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false));
mRv.setItemAnimator(new DefaultItemAnimator());
mPadGradeAdpter = new PadGradeAdpter(mContext, list);
mRv.setAdapter(mPadGradeAdpter);
// if(mPadGradeAdpter==null){
// mPadGradeAdpter=new PadGradeAdpter(mContext,mArrayList );
// mRv.setAdapter(mPadGradeAdpter);
// }else {
// mPadGradeAdpter.notifyDataSetChanged();
// }
//添加分割线
mRv.addItemDecoration(new MyDividerItemDecoration(
getActivity(), DividerItemDecoration.VERTICAL));
curPage = pageInfo.getCurPage();
totalPages = pageInfo.getTotalPages();
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();

}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "网络错误", Toast.LENGTH_SHORT).show();
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();
}
});
}

//用户pad评价的上推加载回调
private void PadGrade1(String mLevel, boolean isShowNoComment, int mCurPage) {
netWorkHelper.obtainStoreScoreComment(mContext, mLevel, mCurPage, isShowNoComment, new NetWorkListener.ObtainStoreScoreCommentListener() {
@Override
public void onFinish(ArrayList list, PageInfo pageInfo) {
// mLvShopgrade.setAdapter(new ItemPadgradeAdapter(mContext,list));
mArrayList.clear();
mArrayList.addAll(list);
mRv.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false));
mRv.setItemAnimator(new DefaultItemAnimator());
mPadGradeAdpter = new PadGradeAdpter(mContext, list);
mRv.setAdapter(mPadGradeAdpter);
if (mPadGradeAdpter == null) {
mPadGradeAdpter = new PadGradeAdpter(mContext, mArrayList);
mRv.setAdapter(mPadGradeAdpter);
} else {
mPadGradeAdpter.notifyDataSetChanged();
}

//添加分割线
mRv.addItemDecoration(new MyDividerItemDecoration(
getActivity(), DividerItemDecoration.VERTICAL));
curPage = pageInfo.getCurPage();
totalPages = pageInfo.getTotalPages();
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();

}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "网络错误", Toast.LENGTH_SHORT).show();
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();
}
});
}

private void PadComplain(int mCurPage) {
netWorkHelper.obtainStoreScoreComplain(mContext, mCurPage, new NetWorkListener.ObtainStoreScoreComplainListener() {
@Override
public void onFinish(ArrayList list, PageInfo pageInfo) {
mComplainInfoArrayList.clear();
mComplainInfoArrayList.addAll(list);
mRv.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.VERTICAL, false));
mRv.setItemAnimator(new DefaultItemAnimator());
if (mPadComplainAdapter == null) {
mPadComplainAdapter = new PadComplainAdapter(mContext, mComplainInfoArrayList);
} else {
mPadComplainAdapter.notifyDataSetChanged();
}
mRv.setAdapter(mPadComplainAdapter);
//添加分割线
mRv.addItemDecoration(new MyDividerItemDecoration(
getActivity(), DividerItemDecoration.VERTICAL));
curPage1 = pageInfo.getCurPage();
totalPages1 = pageInfo.getTotalPages();

mPadComplainAdapter.setOnItemClickListener(new PadComplainAdapter.OnItemClickListener() {
@Override
public void onClick(PadComplainAdapter.ViewHolder holder, View view, int position) {
//把Reclyclerview条目的位置跟具体订单关联起来
ComplainInfo mComplainInfo = mPadComplainAdapter.getItem(position);
switch (position) {
default:
Intent intent1 = new Intent();
intent1.putExtra("mComplainInfo", mComplainInfo);
intent1.setClass(mContext, UserComplainActivity.class);
startActivityForResult(intent1, 0);
break;
}
}
});
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();


}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "联网失败", Toast.LENGTH_SHORT).show();
mRefreshLayout1.endRefreshing();
mRefreshLayout1.endLoadingMore();

}
});
}

//下拉刷新
@Override
public void onBGARefreshLayoutBeginRefreshing(BGARefreshLayout refreshLayout) {
Log.e("1", "run:--------->count1: " + count1);
count1=activity.getCount();
Log.e("1", "run:--------->count1: " + count1);
if (count1 == 0) {
if (type == 1) {
PadGrade(mStartStatus + "", mIsChecked);
} else {
PadComplain(1);
}
} else {
if (type == 1) {
PadGrade(null, mIsChecked);
} else {
PadComplain(1);
}
}


}

//上推加载
@Override
public boolean onBGARefreshLayoutBeginLoadingMore(BGARefreshLayout refreshLayout) {
if (type == 1) {
if (curPage < totalPages) {
curPage = curPage + 1;
PadGrade1(mStartStatus + "", mIsChecked, curPage);
return true;
} else {
Toast.makeText(mContext, "暂无更多数据", Toast.LENGTH_SHORT).show();
mRefreshLayout1.endLoadingMore();
return false;
}
} else {
if (curPage1 < totalPages1) {
curPage1 = curPage1 + 1;
Log.e("1", "run:--------->6666 " + curPage1);
PadComplain(curPage1);
return true;
} else {
Toast.makeText(mContext, "暂无更多数据", Toast.LENGTH_SHORT).show();
mRefreshLayout1.endLoadingMore();
return false;
}

}
}
}
package com.mine.project.function.activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.util.Log;
import android.view.View;
import android.widget.ImageButton;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;

import com.mine.project.R;
import com.mine.project.common.helper.ActivityOpenTools;
import com.mine.project.common.utils.JAnalyticsUtil;
import com.mine.project.function.adapter.TabAdapter;
import com.mine.project.function.home.TabLayoutFragment;
import com.mine.project.home.ui.AppBaseActivity;
import com.mine.project.network.control.NetWorkListener;

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


public class ShopGradeActivity extends AppBaseActivity implements View.OnClickListener {
private TextView tvTitle;
private ImageButton ibReturn;
private ImageButton ibHome;
private TabLayout mTabLayout;
private ViewPager mViewPager;
private TabAdapter mTabAdapter;
private RatingBar mRbShopGradeXingxing;
private TextView mTvShopgradeZan;
public static String[] tabTitle = new String[]{"评论", "投诉"};
private int mStatus;
private int count;

public int getCount() {
return count;
}

public void setCount(int mCount) {
count = mCount;
}

private static final String complain = "投诉";
public static final int RESULT_OK = 2;

@Override
protected void onLayoutCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_shop_grade);
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
initviews();
initDatas();
}

@Override
public void onClick(View v) {
super.onClick(v);
switch (v.getId()) {
case R.id.ib_return:
ActivityOpenTools.finishCustomActivityWithHold((Activity) mContext);
JAnalyticsUtil.onCountEvent(mContext,JAnalyticsUtil.BACK,null);
break;
case R.id.ib_home:
ActivityOpenTools.finishCustomActivityWithHold((Activity) mContext);
JAnalyticsUtil.onCountEvent(mContext,JAnalyticsUtil.HOME,null);
break;
default:

break;

}

}

private void initviews() {
tvTitle = findView(R.id.tv_title);
ibReturn = findView(R.id.ib_return);
ibHome = findView(R.id.ib_home);
mTabLayout = (TabLayout) findViewById(R.id.tab);
mViewPager = (ViewPager) findViewById(R.id.viewpager);
mRbShopGradeXingxing = (RatingBar) findViewById(R.id.rb_shop_grade_xingxing);
mTvShopgradeZan = (TextView) findViewById(R.id.tv_shopgrade_zan);
ibReturn.setOnClickListener(this);
ibHome.setOnClickListener(this);

}

private void initDatas() {
tvTitle.setText("店铺评分");
netWorkHelper.obtainStoreScoreInfoComment(mContext, new NetWorkListener.ObtainStoreScoreInfoCommentListener() {
@Override
public void onFinish(int score, int pointCount, int starFive, int starFour, int starThree, int starTwo, int starOne) {
mRbShopGradeXingxing.setRating(score);
mTvShopgradeZan.setText(pointCount+"");
}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "网络错误", Toast.LENGTH_SHORT).show();
}
});
netWorkHelper.obtainStoreScoreInfoComplain(mContext, new NetWorkListener.ObtainStoreScoreInfoComplainListener() {
@Override
public void onFinish(int score, int pointCount, int unTreatedCount) {
tabTitle[1] = complain+"("+unTreatedCount+")";
mTabAdapter.notifyDataSetChanged();

}

@Override
public void onError(String errorDesc) {
Toast.makeText(mContext, "网络错误", Toast.LENGTH_SHORT).show();
}
});





}

@Override
protected void onResume() {
super.onResume();
List fragments = new ArrayList<>();
for (int i = 0; i < tabTitle.length; i++) {
fragments.add(TabLayoutFragment.newInstance(i + 1));
}
mTabAdapter = new TabAdapter(getSupportFragmentManager(), fragments);
//给ViewPager设置适配器
mViewPager.setAdapter(mTabAdapter);
//将TabLayout和ViewPager关联起来。
mTabLayout.setupWithViewPager(mViewPager);
// mTabLayout.setLayoutParams();
mTabLayout.getTabAt(1);
// mTabLayout.setSelected(false);
mTabLayout.setTop(1);
//设置可以滑动
mTabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
//均分
mTabLayout.setTabMode(TabLayout.MODE_FIXED);
mViewPager.setCurrentItem(mStatus);

}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
// 根据上面发送过去的请求码来区别
switch (resultCode) {
case RESULT_OK:
mStatus = 1;
count=1;
Log.e("1", "run:--------->count333 "+count );
break;
default:
break;
}
}
}