package info.papdt.express.helper.ui.adapter;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import com.github.ksoichiro.android.observablescrollview.CacheFragmentStatePagerAdapter;
import info.papdt.express.helper.R;
import info.papdt.express.helper.ui.fragment.BaseHomeFragment;
import info.papdt.express.helper.ui.fragment.HomeFragment;
import info.papdt.express.helper.ui.fragment.ReceivedListFragment;
import info.papdt.express.helper.ui.fragment.UnreceivedListFragment;
public class HomePagerAdapter extends CacheFragmentStatePagerAdapter {
private static String[] TITLES;
private int mScrollY;
public HomePagerAdapter(Context context, FragmentManager fm) {
super(fm);
TITLES = context.getResources().getStringArray(R.array.title_sections);
}
public void setScrollY(int scrollY) {
mScrollY = scrollY;
}
@Override
protected android.support.v4.app.Fragment createItem(int position) {
Fragment f = null;
switch (position) {
case 0:
f = HomeFragment.newInstance();
if (0 < mScrollY) {
Bundle args = new Bundle();
args.putInt(BaseHomeFragment.ARG_INITIAL_POSITION, 1);
f.setArguments(args);
}
break;
case 1:
f = UnreceivedListFragment.newInstance();
if (0 < mScrollY) {
Bundle args = new Bundle();
args.putInt(BaseHomeFragment.ARG_INITIAL_POSITION, 1);
f.setArguments(args);
}
break;
case 2:
f = ReceivedListFragment.newInstance();
if (0 < mScrollY) {
Bundle args = new Bundle();
args.putInt(BaseHomeFragment.ARG_INITIAL_POSITION, 1);
f.setArguments(args);
}
break;
}
return f;
}
public void notifyDataSetChanged() {
for (int i = 0; i < 3; i++) {
try {
BaseHomeFragment fragment = (BaseHomeFragment) this.getItemAt(i);
fragment.mHandler.sendEmptyMessage(BaseHomeFragment.FLAG_REFRESH_ADAPTER_ONLY);
} catch (Exception e) {
}
}
}
@Override
public int getCount() {
return 3;
}
@Override
public CharSequence getPageTitle(int position) {
return TITLES[position];
}
}