package com.ijoomer.components.icms; import java.util.ArrayList; import org.json.JSONObject; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentStatePagerAdapter; import android.support.v4.view.ViewPager; import android.widget.TextView; import com.ijoomer.src.R; /** * This Class Contains All Method Related To IcmsArticleDetailActivity. * * @author tasol * */ public class IcmsArticleDetailActivity extends IcmsMasterActivity { private ViewPager viewPager; private ArrayList<String> IN_ARTICLE_ID_ARRAY; private ArticleDetailAdapter adapter; private String IN_ARTICLE_ID; private int IN_ARTICLE_INDEX; private JSONObject IN_OBJ; /** * Overrides method */ @Override public int setLayoutId() { return R.layout.icms_article_detail; } @Override public void initComponents() { viewPager = (ViewPager) findViewById(R.id.viewpager); adapter = new ArticleDetailAdapter(getSupportFragmentManager()); getIntentData(); } @Override public void prepareViews() { ((TextView) getHeaderView().findViewById(R.id.txtHeader)).setText(getScreenCaption()); viewPager.setAdapter(adapter); viewPager.setCurrentItem(IN_ARTICLE_INDEX); } @Override public void setActionListeners() { } /** * Class methods */ /** * This method used to get intent data. */ private void getIntentData() { try { IN_OBJ = new JSONObject(getIntent().getStringExtra("IN_OBJ")); IN_ARTICLE_ID = new JSONObject(IN_OBJ.getString(ITEMDATA)).getString("id"); } catch (Exception e) { } if (IN_ARTICLE_ID == null) { try { IN_ARTICLE_INDEX = Integer.parseInt(getIntent().getStringExtra("IN_ARTICLE_INDEX")); IN_ARTICLE_ID_ARRAY = getIntent().getStringArrayListExtra("IN_ARTICLE_ID_ARRAY"); } catch (Exception e) { } } else { IN_ARTICLE_INDEX = 0; IN_ARTICLE_ID_ARRAY = new ArrayList<String>(); IN_ARTICLE_ID_ARRAY.add(IN_ARTICLE_ID); } } /** * Inner class */ private class ArticleDetailAdapter extends FragmentStatePagerAdapter { public ArticleDetailAdapter(FragmentManager fm) { super(fm); } public int getItemPosition(Object object) { return POSITION_NONE; } @Override public Fragment getItem(int pos) { System.gc(); return new IcmsArticleDetailFragment(IcmsArticleDetailActivity.this, IN_ARTICLE_ID_ARRAY.get(pos), (pos + 1), IN_ARTICLE_ID_ARRAY.size()); } @Override public int getCount() { if (IN_ARTICLE_ID_ARRAY != null) return IN_ARTICLE_ID_ARRAY.size(); else return 0; } } }