import android.os.Bundle;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import com.google.gson.reflect.TypeToken;
import com.lingnet.app.tv.R;
import com.lingnet.app.tv.adapter.LeftTypeListAdapter;
import com.lingnet.app.tv.adapter.ResourceVideoAdapter;
import com.lingnet.app.tv.bean.BaseBean;
import com.lingnet.app.tv.constant.Const;
import com.lingnet.app.tv.constant.RequestType;
import com.lingnet.app.tv.utill.ExitSystemTask;
import com.lingnet.app.tv.view.GridSpacingItemDecoration;
import com.yanzhenjie.recyclerview.swipe.SwipeMenuRecyclerView;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import butterknife.BindView;
import butterknife.ButterKnife;
import retrofit2.Call;
public class ResourceDemandActivity extends BaseAutoActivity {
// @BindView(R.id.refresh_layout)
// SwipeRefreshLayout mRefreshLayout;
// @BindView(R.id.recyclerview)
// SwipeMenuRecyclerView recyclerView;
ResourceVideoAdapter videoAdapter;
@BindView(R.id.recyclerview)
RecyclerView recyclerView;
// @BindView(R.id.id_flowlayout)
// TagFlowLayout mFlowLayout;
String id;
int currentPage = 0;
// private LayoutInflater mInflater;
private String typeId = "全部";
@BindView(R.id.left_recyclerview)
RecyclerView leftrecyclerView;
LeftTypeListAdapter mLeftTypeListAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_resource_demand);
ButterKnife.bind(this);
// mInflater = LayoutInflater.from(this);
ExitSystemTask.getInstance().putActivity("ResourceDemandActivity", this);
// mRefreshLayout.setOnRefreshListener(mRefreshListener); // 刷新监听。
initRecyclerView();
sendTypeRequest();
}
private void sendTypeRequest() {
Call call = client.resourseCategory();
sendRequestAsContr(call, RequestType.resourseCategory, false);
}
private void sendRequest() {
Map params = new HashMap<>();
params.put("pageSize", "" + Const.PAGESIZE);
params.put("pageIndex", "" + currentPage);
params.put("categoryId", typeId);
//categoryId
Call call = client.resourceDemand(params);
sendRequest(call, RequestType.resourceDemand);
}
// @OnClick({R.id.btn_left, R.id.btn_right_1})
// void onClick(View v) {
// switch (v.getId()) {
// case R.id.btn_left:
// super.onBackPressed();
// break;
// }
// }
/**
* 刷新。
*/
private SwipeRefreshLayout.OnRefreshListener mRefreshListener = new SwipeRefreshLayout
.OnRefreshListener() {
@Override
public void onRefresh() {
videoAdapter.notifyDataSetChanged(null);//先清空数据
currentPage = 0;
sendRequest();
// mRefreshLayout.setRefreshing(false);
}
};
/**
* 加载更多。
*/
private SwipeMenuRecyclerView.LoadMoreListener mLoadMoreListener = new SwipeMenuRecyclerView
.LoadMoreListener() {
@Override
public void onLoadMore() {
currentPage++;
sendRequest();
}
};
@Override
public void configActionBar() {
}
private void initRecyclerView() {
final GridLayoutManager mGridLayoutManager = new GridLayoutManager(mActivity, 2);
recyclerView.setLayoutManager(mGridLayoutManager);
recyclerView.setHasFixedSize(true);
recyclerView.setNestedScrollingEnabled(false);
recyclerView.setItemAnimator(null);
recyclerView.addItemDecoration(new GridSpacingItemDecoration(2, 10, false));
// recyclerView.setSwipeItemClickListener(new SwipeItemClickListener() {
// @Override
// public void onItemClick(View itemView, int position) {
//// startNextActivity(null, BookDeatilActivity.class);
// Map book= videoAdapter.dataList.get(position);
// Bundle bundle=new Bundle();
// bundle.putString("id",book.get("id"));
// startNextActivity(bundle, ResourceDetailActivity.class);
// }
// });
// recyclerView.useDefaultLoadMore();
// recyclerView.setLoadMoreListener(mLoadMoreListener);
videoAdapter = new ResourceVideoAdapter(mActivity);
videoAdapter.setHasStableIds(true);
videoAdapter.setmOnBindListener(new ResourceVideoAdapter.OnBindListener() {
@Override
public void onBind(int i) {
Map book = videoAdapter.dataList.get(i);
Bundle bundle = new Bundle();
bundle.putString("id", book.get("id"));
// startNextActivity(bundle, ResourceDetailActivity.class);
startNextActivity(bundle, DetailResourceActivity.class);
}
});
recyclerView.setAdapter(videoAdapter);
leftrecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
leftrecyclerView.setHasFixedSize(true);
leftrecyclerView.setNestedScrollingEnabled(false);
mLeftTypeListAdapter = new LeftTypeListAdapter(mActivity);
leftrecyclerView.setAdapter(mLeftTypeListAdapter);
mLeftTypeListAdapter.setmIOnLeftClicListener(new LeftTypeListAdapter.IOnLeftClicListener() {
@Override
public void onLeftClick(int pos) {
mLeftTypeListAdapter.setSelectPos(pos);
mLeftTypeListAdapter.notifyDataSetChanged();
typeId = mLeftTypeListAdapter.dataList.get(pos).get("name");
videoAdapter.notifyDataSetChanged(null);//先清空数据
currentPage = 0;
sendRequest();
}
});
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (newState == RecyclerView.SCROLL_STATE_IDLE) {
int lastVisiblePosition = mGridLayoutManager.findLastVisibleItemPosition();
if (lastVisiblePosition >= mGridLayoutManager.getItemCount() - 1) {
currentPage++;
sendRequest();
// System.out.println("====自动加载");
}
}
}
});
}
@Override
public void requestCallBack(String jsonData, RequestType type) {
switch (type) {
case resourceDemand:
List