public class Frag_One_one extends Fragment implements IDataView {
private View view;
private IDataPresenter presenter;
List<VpData.TopStoriesBean> top_stories;
private RecyclerViewHeader mHeader;
private XRecyclerView mOneOneXrlFrag;
private ViewPager mOneOneVpFrag;
List<ImageView> list;
List<ImageView> list_doc;
private Handler handler = new Handler();
private int index=0;
private int page = 20131120;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
view = View.inflate(getContext(), R.layout.frag_one_one, null);
initView();
presenter = new DataPresenter(Frag_One_one.this);
presenter.setContent();
initVP();
presenter.setContentRecycle();
return view;
}
//小圆点
public void initDoc(){
//找控件
LinearLayout ll_dco = (LinearLayout) view.findViewById(R.id.ll_doc);
//创建ImageView集合
list_doc = new ArrayList<ImageView>();
if(top_stories != null && top_stories.size() > 0){
for (int i = 0; i < top_stories.size(); i++) {
//实例化ImageView
ImageView iv = new ImageView(getContext());
//设置圆点
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
params.rightMargin = 10;
iv.setLayoutParams(params);
if(i == 0){
iv.setBackgroundResource(R.drawable.doc_check);
}else{
iv.setBackgroundResource(R.drawable.doc_uncheck);
}
ll_dco.addView(iv);
list_doc.add(iv);
}
}
}
//轮播
protected void initVP() {
list = new ArrayList<ImageView>();
if(top_stories != null && top_stories.size() > 0){
for (int i = 0; i < top_stories.size(); i++) {
ImageView iv = new ImageView(getActivity());
iv.setScaleType(ImageView.ScaleType.FIT_XY);
Glide.with(getActivity()).load(top_stories.get(i).getImage()).into(iv);
list.add(iv);
}
//创建适配器
MyPagerAdapter myPagerAdatper = new MyPagerAdapter();
mOneOneVpFrag.setAdapter(myPagerAdatper);
initDoc();
//ViewPager的点击
mOneOneVpFrag.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
int index = arg0 % list_doc.size();
for (int i = 0; i < list_doc.size(); i++) {
//点击选中的状态
list_doc.get(i).setBackgroundResource(R.drawable.doc_uncheck);
}
//选中状态
list_doc.get(index).setBackgroundResource(R.drawable.doc_check);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
//无限轮播
handler.postDelayed(new Runnable() {
@Override
public void run() {
index =mOneOneVpFrag .getCurrentItem();
index++;
mOneOneVpFrag.setCurrentItem(index);
handler.postDelayed(this,3000);
}
},3000);
}
}
class MyPagerAdapter extends PagerAdapter {
@Override
public int getCount() {
if (list != null){
return Integer.MAX_VALUE;
}
return 0;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
position %= list.size();
container.addView(list.get(position));
return list.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
}