package com.hpw.myapp.ui.zhihu.fragment.child;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.hpw.mvpframe.base.CoreBaseFragment;
import com.hpw.mvpframe.widget.recyclerview.BaseQuickAdapter;
import com.hpw.mvpframe.widget.recyclerview.BaseViewHolder;
import com.hpw.mvpframe.widget.recyclerview.CoreRecyclerView;
import com.hpw.mvpframe.widget.recyclerview.listener.OnItemClickListener;
import com.hpw.mvpframe.widget.recyclerview.recyclerviewpager.LoopRecyclerViewPager;
import com.hpw.myapp.R;
import com.hpw.myapp.ui.zhihu.activity.ZhihuDetailsActivity;
import com.hpw.myapp.ui.zhihu.contract.ZhihuContract;
import com.hpw.myapp.ui.zhihu.model.dailymodel.DailyListBean;
import com.hpw.myapp.ui.zhihu.model.dailymodel.DailyModel;
import com.hpw.myapp.ui.zhihu.presenter.dailypresenter.DailyPresenter;
/**
* Created by hpw on 16/10/31.
*/
public class DailyFragment extends CoreBaseFragment<DailyPresenter, DailyModel> implements ZhihuContract.DailyView {
CoreRecyclerView coreRecyclerView;
LoopRecyclerViewPager vpTop;
@Override
public int getLayoutId() {
return 0;
}
@Override
public View getLayoutView() {
coreRecyclerView = new CoreRecyclerView(mContext).init(new BaseQuickAdapter<DailyListBean.StoriesBean, BaseViewHolder>(R.layout.item_daily) {
@Override
protected void convert(BaseViewHolder helper, DailyListBean.StoriesBean item) {
helper.setText(R.id.tv_daily_item_title, item.getTitle());
Glide.with(mContext).load(item.getImages().get(0)).crossFade().placeholder(R.mipmap.def_head).into((ImageView) helper.getView(R.id.iv_daily_item_image));
}
}).addOnItemClickListener(new OnItemClickListener() {
@Override
public void SimpleOnItemClick(BaseQuickAdapter adapter, View view, int position) {
// showToast("点击了" + position);
// ((SupportFragment) getParentFragment()).start(DailyDetailsFragment.newInstance(((DailyListBean.StoriesBean) adapter.getData().get(position)).getId()));
ZhihuDetailsActivity.start(mActivity, view.findViewById(R.id.iv_daily_item_image), ((DailyListBean.StoriesBean) adapter.getData().get(position)).getId());
}
});
return coreRecyclerView;
}
@Override
public void initUI(View view, @Nullable Bundle savedInstanceState) {
View view1 = LayoutInflater.from(mContext).inflate(R.layout.daily_header, (ViewGroup) coreRecyclerView.getParent(), false);
vpTop = (LoopRecyclerViewPager) view1.findViewById(R.id.vp_top);
vpTop.setLayoutManager(new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false));
coreRecyclerView.addHeaderView(view1);
}
@Override
public void initData() {
mPresenter.getDailyData();
}
@Override
public void showContent(DailyListBean info) {
vpTop.setAdapter(new BaseQuickAdapter<DailyListBean.TopStoriesBean, BaseViewHolder>(R.layout.item_daily_header, info.getTop_stories()) {
@Override
protected void convert(BaseViewHolder helper, DailyListBean.TopStoriesBean item) {
helper.setText(R.id.tv_top_title, item.getTitle());
Glide.with(mContext).load(item.getImage()).crossFade().placeholder(R.drawable.ic_default_cover).into((ImageView) helper.getView(R.id.iv_top_image));
helper.setOnClickListener(R.id.iv_top_image, v -> {
ZhihuDetailsActivity.start(mActivity, v.findViewById(R.id.iv_top_image), item.getId());
// ((SupportFragment) getParentFragment()).start(DailyDetailsFragment.newInstance(item.getId()));
});
}
});
coreRecyclerView.getAdapter().addData(info.getStories());
mPresenter.startInterval();
}
@Override
public void showError(String msg) {
}
@Override
public void doInterval(int i) {
vpTop.smoothScrollToPosition(i);
}
}