package com.sunvote.xpadapp.fragments; import android.app.FragmentManager; import android.app.FragmentTransaction; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.Button; import android.widget.ImageButton; import android.widget.ListView; import android.widget.TextView; import com.sunvote.util.LogUtil; import com.sunvote.xpadapp.R; import com.sunvote.xpadapp.adapter.DocumentAdapter; import com.sunvote.xpadapp.base.BaseFragment; import com.sunvote.xpadapp.db.modal.BillInfo; import java.util.ArrayList; public class DocumentBrowserFragment extends BaseFragment { private String title; private String TAG = "DocumentBrowserFragment"; private ArrayList aryContent = null; private TextView tvTitle; private ListView listview; private DocumentAdapter mAdapter; private boolean isShowBack; public void setInfo(ArrayList docList, boolean showBack) { isShowBack = showBack; aryContent = docList; } public void setTitle(String title) { this.title = title; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { LogUtil.d(TAG, "onCreateView"); View view = inflater.inflate(R.layout.fragment_document_browser, container, false); view.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { } }); ImageButton btnBack = view.findViewById(R.id.document_browser_btnback); if (isShowBack) { btnBack.setVisibility(View.VISIBLE); } btnBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { goBack(); } }); listview = view.findViewById(R.id.document_browser_listview); listview.setFastScrollAlwaysVisible(false); mAdapter = new DocumentAdapter(getActivity(),aryContent); listview.setAdapter(mAdapter); listview.setFastScrollAlwaysVisible(false); tvTitle = view.findViewById(R.id.document_browser_title); if (title != null) { tvTitle.setText(title); } else { tvTitle.setText(getString(R.string.doc_title)); } Button btnPageUp = view.findViewById(R.id.document_browser_pageup); Button btnPageDown = view.findViewById(R.id.document_browser_pagedown); btnPageUp.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { listview.smoothScrollByOffset(-2); } }); btnPageDown.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { listview.smoothScrollByOffset(2); } }); listview.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView parent, View view, int position, long id) { LogUtil.d(TAG, "onItemClick:" + position); BillInfo it = aryContent.get(position); showDetail(it); } }); return view; } private void goBack() { FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); tx.setCustomAnimations(android.R.animator.fade_in, android.R.animator.fade_out); tx.remove(DocumentBrowserFragment.this); tx.commit(); } private void showDetail(BillInfo item) { if (item.billType == 20 || item.billType == 999) { ArrayList list = null; if(item.billType == 20) { list = mMainActivity.dbm.getSubBillItems(mMainActivity.meetingId, item.billId); }else{ list = mMainActivity.dbm.getBillItemsMain(mMainActivity.meetingId, item.billNo); } FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); DocumentBrowserFragment fDetail = new DocumentBrowserFragment(); fDetail.setInfo(list, true); fDetail.title = item.title; tx.add(R.id.frame_content, fDetail, "fDetail"); tx.addToBackStack(null); tx.commit(); return; } if (item.billFile == null || item.billFile.length() == 0) { return; } FragmentManager fm = getFragmentManager(); FragmentTransaction tx = fm.beginTransaction(); MultiContentDetailFragment fDetail = new MultiContentDetailFragment(); fDetail.setInfo(item, null, true,1,1); tx.add(R.id.frame_content, fDetail, "fDetail"); tx.addToBackStack(null); tx.commit(); } }