Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.nepalicalendar;
- import java.io.ByteArrayInputStream;
- import java.io.ByteArrayOutputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.net.HttpURLConnection;
- import java.net.URL;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- import com.example.nepalicalendar.R;
- import com.example.nepalicalendar.ExchangeRate;
- import com.example.nepalicalendar.MainActivity;
- import com.example.nepalicalendar.XMLPullParserHandler;
- import android.support.v4.app.Fragment;
- import android.support.v4.app.FragmentActivity;
- import android.support.v4.app.FragmentStatePagerAdapter;
- import android.support.v4.view.ViewPager;
- import android.app.Activity;
- import android.app.ProgressDialog;
- import android.content.Context;
- import android.content.SharedPreferences;
- import android.net.ConnectivityManager;
- import android.net.NetworkInfo;
- import android.os.AsyncTask;
- import android.os.Bundle;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.ArrayAdapter;
- import android.widget.EditText;
- import android.widget.ListView;
- import android.widget.Spinner;
- import android.widget.TabHost;
- import android.widget.TabWidget;
- import android.widget.TextView;
- import android.widget.Toast;
- import android.widget.TabHost.TabContentFactory;
- /**
- * A placeholder fragment containing a simple view.
- */
- public class FragmentLoadshedding extends Fragment {
- /**
- * The fragment argument representing the section number for this
- * fragment.
- */
- private static final String ARG_SECTION_NUMBER = "section_number";
- View rootView;
- TabHost mTabHost;
- TabsAdapter mTabsAdapter;
- ViewPager mViewPager;
- /**
- * Returns a new instance of this fragment for the given section number.
- */
- public static FragmentLoadshedding newInstance(int sectionNumber) {
- FragmentLoadshedding fragment = new FragmentLoadshedding();
- Bundle args = new Bundle();
- args.putInt(ARG_SECTION_NUMBER, sectionNumber);
- fragment.setArguments(args);
- return fragment;
- }
- public FragmentLoadshedding() {
- }
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- rootView = inflater.inflate(R.layout.loadshedding, container,
- false);
- mViewPager = (ViewPager) rootView.findViewById(R.id.pager);
- mTabHost = (TabHost) rootView.findViewById(android.R.id.tabhost);
- mTabHost.setup();
- mTabsAdapter = new TabsAdapter(getActivity(), mTabHost, mViewPager);
- Bundle arg1 = new Bundle();
- arg1.putString("yearMonth", "201508");
- setupTab(mTabsAdapter, new TextView(getActivity()), "1", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "2", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "3", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "4", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "5", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "6", group1.class, arg1);
- setupTab(mTabsAdapter, new TextView(getActivity()), "7", group1.class, arg1);
- mTabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);
- return rootView;
- }
- private void setupTab(final TabsAdapter adapter, final View view,
- final String tag, Class<?> cls, Bundle args) {
- View tabview = createTabView(mTabHost.getContext(), tag);
- adapter.addTab(mTabHost.newTabSpec(tag).setIndicator(tabview)
- .setContent(new TabContentFactory() {
- public View createTabContent(String tag) {
- return view;
- }
- }), cls, args);
- }
- private static View createTabView(final Context context, final String text) {
- View view = LayoutInflater.from(context).inflate(R.layout.tabs_bg, null);
- TextView tv = (TextView) view.findViewById(R.id.tabsText);
- tv.setText(text);
- return view;
- }
- @Override
- public void onAttach(Activity activity) {
- super.onAttach(activity);
- ((MainActivity) activity).onSectionAttached(getArguments().getInt(
- ARG_SECTION_NUMBER));
- }
- //Tab class starts
- public static class TabsAdapter extends FragmentStatePagerAdapter implements TabHost.OnTabChangeListener, ViewPager.OnPageChangeListener
- {
- private final Context mContext;
- private final TabHost mTabHost;
- private final ViewPager mViewPager;
- private final ArrayList<TabInfo> mTabs = new ArrayList<TabInfo>();
- static final class TabInfo
- {
- private final String tag;
- private final Class<?> clss;
- private final Bundle args;
- TabInfo(String _tag, Class<?> _class, Bundle _args)
- {
- tag = _tag;
- clss = _class;
- args = _args;
- }
- }
- static class DummyTabFactory implements TabHost.TabContentFactory
- {
- private final Context mContext;
- public DummyTabFactory(Context context)
- {
- mContext = context;
- }
- public View createTabContent(String tag)
- {
- View v = new View(mContext);
- v.setMinimumWidth(0);
- v.setMinimumHeight(0);
- return v;
- }
- }
- public TabsAdapter(FragmentActivity activity, TabHost tabHost, ViewPager pager)
- {
- super(activity.getSupportFragmentManager());
- mContext = activity;
- mTabHost = tabHost;
- mViewPager = pager;
- mTabHost.setOnTabChangedListener(this);
- mViewPager.setAdapter(this);
- mViewPager.setOnPageChangeListener(this);
- }
- public void addTab(TabHost.TabSpec tabSpec, Class<?> clss, Bundle args)
- {
- tabSpec.setContent(new DummyTabFactory(mContext));
- String tag = tabSpec.getTag();
- TabInfo info = new TabInfo(tag, clss, args);
- mTabs.add(info);
- mTabHost.addTab(tabSpec);
- notifyDataSetChanged();
- }
- @Override
- public int getCount()
- {
- return mTabs.size();
- }
- @Override
- public Fragment getItem(int position)
- {
- TabInfo info = mTabs.get(position);
- return Fragment.instantiate(mContext, info.clss.getName(), info.args);
- }
- public void onTabChanged(String tabId)
- {
- int position = mTabHost.getCurrentTab();
- mViewPager.setCurrentItem(position);
- }
- public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels)
- {
- }
- public void onPageSelected(int position)
- {
- // Unfortunately when TabHost changes the current tab, it kindly
- // also takes care of putting focus on it when not in touch mode.
- // The jerk.
- // This hack tries to prevent this from pulling focus out of our
- // ViewPager.
- TabWidget widget = mTabHost.getTabWidget();
- int oldFocusability = widget.getDescendantFocusability();
- widget.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
- mTabHost.setCurrentTab(position);
- widget.setDescendantFocusability(oldFocusability);
- }
- public void onPageScrollStateChanged(int state)
- {
- }
- }
- //tab class ends
- }//main class end
Add Comment
Please, Sign In to add comment