189 lines
6.1 KiB
Plaintext
189 lines
6.1 KiB
Plaintext
package com.novelbook.android.Fragments;
|
|
|
|
import android.os.Bundle;
|
|
import android.support.v7.widget.LinearLayoutManager;
|
|
import android.support.v7.widget.RecyclerView;
|
|
import android.util.Log;
|
|
import android.view.View;
|
|
|
|
import com.ixiaow.multilayout.MultiLayout;
|
|
import com.novelbook.android.R;
|
|
import com.novelbook.android.adapter.BandanAdapterNew;
|
|
import com.novelbook.android.adapter.BookListAdapter;
|
|
import com.novelbook.android.bean.NovelBlock;
|
|
import com.novelbook.android.db.Novel;
|
|
import com.novelbook.android.netsubscribe.BookSubscribe;
|
|
import com.novelbook.android.netutils.OnSuccessAndFaultListener;
|
|
import com.novelbook.android.netutils.OnSuccessAndFaultSub;
|
|
import com.novelbook.android.adapter.BandanAdapter;
|
|
import com.novelbook.android.utils.Constants;
|
|
import com.novelbook.android.utils.GsonUtil;
|
|
import com.novelbook.android.utils.OnItemClickListener;
|
|
import com.umeng.analytics.MobclickAgent;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.Arrays;
|
|
import java.util.List;
|
|
|
|
import butterknife.BindView;
|
|
|
|
|
|
public class Fragment_bangdan extends BasicFragment {
|
|
public static final String TAG=Fragment_bangdan.class.getSimpleName();
|
|
// TODO: Rename parameter arguments, choose names that match
|
|
// the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
|
|
private static final String ARG_CID = "CID";
|
|
private BandanAdapterNew mAdapter;
|
|
private List<NovelBlock> mBlocks;
|
|
private List<NovelBlock> mMoreBlocks;
|
|
// private List<Novel> mData;
|
|
@BindView(R.id.rvBangdan)
|
|
RecyclerView rvBandan;
|
|
// @BindView(R.id.topic_layout)
|
|
// MultiLayout topic_layout;
|
|
|
|
private int cid;
|
|
public static Fragment_bangdan newInstance(int cid) {
|
|
Fragment_bangdan fragment = new Fragment_bangdan();
|
|
Bundle args = new Bundle();
|
|
args.putInt(ARG_CID, cid);
|
|
fragment.setArguments(args);
|
|
return fragment;
|
|
}
|
|
@Override
|
|
protected void fillData() {
|
|
|
|
if(mMoreBlocks!=null) {
|
|
|
|
mAdapter.AddFooterItem(mMoreBlocks);
|
|
mAdapter.notifyDataSetChanged();
|
|
}
|
|
|
|
}
|
|
|
|
protected void processArguments(){
|
|
if (getArguments() != null) {
|
|
Bundle bundle = getArguments() ;
|
|
|
|
}
|
|
}
|
|
@Override
|
|
protected int getLayoutRes() {
|
|
return R.layout.fragment_fragment_bangdan;
|
|
}
|
|
|
|
@Override
|
|
public void initData() {
|
|
|
|
if (getArguments() != null) {
|
|
cid = getArguments().getInt(ARG_CID);
|
|
}
|
|
|
|
if(pageNo==1) {
|
|
|
|
if(mBlocks!=null){ //下拉刷新
|
|
mBlocks = new ArrayList<NovelBlock>();
|
|
mAdapter.setData(mBlocks);
|
|
initialBookList();
|
|
|
|
}else{
|
|
mBlocks = new ArrayList<NovelBlock>();
|
|
mAdapter = new BandanAdapterNew(activity, mBlocks, R.layout.recycle_list_item_bangdannew, new OnItemClickListener() {
|
|
|
|
@Override
|
|
public void onItemClick(View view, int position) {
|
|
// showBookDetail(mBlocks.get(blockId).getNs().get(novelIndex));
|
|
// showPaihangbang(mBlocks.get(position));
|
|
// Toast.makeText(getActivity(),"待。。。。。做",Toast.LENGTH_LONG).show();
|
|
}
|
|
|
|
@Override
|
|
public void onItemLongClick(View view, int position) {
|
|
// initDialog(position);
|
|
// mAdapter.removeData(position);
|
|
}
|
|
|
|
@Override
|
|
public void onLinearOutClick(View view, int blockId, int novelIndex) {
|
|
// Toast.makeText(activity, "book "+ bookId + " clicked", Toast.LENGTH_SHORT).show();
|
|
showPaihangbang(mBlocks.get(blockId));
|
|
// showBookDetail(mBlocks.get(blockId).getNs().get(novelIndex));
|
|
//showPaihangbang("分类名称" +position);
|
|
Log.d(TAG, String.format("clicked: position %s,lineId %s", novelIndex, blockId));
|
|
|
|
// openBook();
|
|
}
|
|
});
|
|
initialBookList();
|
|
}
|
|
}
|
|
|
|
showProgressDialog(true, "正在加载");
|
|
mMoreBlocks =null;
|
|
|
|
BookSubscribe.getPaihangBangByCate( Constants.SEX,cid,new OnSuccessAndFaultSub(new OnSuccessAndFaultListener() {
|
|
@Override
|
|
public void onSuccess(String result) {
|
|
Log.d(TAG, String.format("init data HttpMethods successed on init, trycnt %s " ,error_try));
|
|
error_try =0;
|
|
// mFirstPage= gson.fromJson(result, FirstPage.class);
|
|
try {
|
|
mMoreBlocks = GsonUtil.parserNovleBlocks(result,"ranks");
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
Log.d(TAG, "error on : " + e.getMessage());
|
|
}
|
|
handler.sendEmptyMessage(1);
|
|
|
|
}
|
|
|
|
@Override
|
|
public void onFault(String errorMsg) {
|
|
//失败
|
|
|
|
Log.d(TAG, String.format("init data HttpMethods error on init, trycnt %s " ,error_try ));
|
|
if(error_try<error_try_max){
|
|
error_try++;
|
|
initData();
|
|
}else {
|
|
handler.sendEmptyMessage(1);
|
|
}
|
|
}
|
|
}, getActivity()));
|
|
|
|
|
|
}
|
|
|
|
|
|
public void initViews(){
|
|
//topic_layout.initTabNames(Arrays.asList(TAB_NAMES));
|
|
}
|
|
|
|
void initialBookList() {
|
|
mAdapter.setShowFootView(true);
|
|
if(rvBandan!=null) { //TODO : why nll?
|
|
rvBandan.setLayoutManager(new LinearLayoutManager(activity));
|
|
rvBandan.setAdapter(mAdapter);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
public void setFTag() {
|
|
|
|
}
|
|
@Override
|
|
public void onResume() {
|
|
super.onResume();
|
|
MobclickAgent.onPageStart(TAG);
|
|
}
|
|
@Override
|
|
public void onPause(){
|
|
super.onPause();
|
|
MobclickAgent.onPageEnd(TAG);
|
|
}
|
|
|
|
}
|