Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //4classes used for viewpagerindicator with an xml
- ViewPageBaseActivity
- -----------------------
- public class ViewPageBaseActivity extends FragmentActivity {
- ViewPageFragmentAdapter mAdapter;
- ViewPager mPager;
- }
- ViewPageActivity ------main activity
- ------------------
- public class ViewPageActivity extends ViewPageBaseActivity {
- @Override
- protected void onCreate(Bundle arg0) {
- super.onCreate(arg0);
- setContentView(R.layout.view_page);
- mAdapter=new ViewPageFragmentAdapter(getSupportFragmentManager());
- mPager = (ViewPager)findViewById(R.id.pager);
- mPager.setAdapter(mAdapter);
- TitlePageIndicator indicator = (TitlePageIndicator)findViewById(R.id.indicator);
- indicator.setViewPager(mPager);
- indicator.setFooterIndicatorStyle(IndicatorStyle.Underline);
- }
- }
- ViewPageFragment
- ------------------
- public class ViewPageFragment extends Fragment{
- private static final String KEY_CONTENT = "TestFragment:Content";
- public static ViewPageFragment newInstance(String content) {
- ViewPageFragment fragment = new ViewPageFragment();
- StringBuilder builder = new StringBuilder();
- for (int i = 0; i < 20; i++) {
- builder.append(content).append(" ");
- }
- builder.deleteCharAt(builder.length() - 1);
- fragment.mContent = builder.toString();
- return fragment;
- }
- private String mContent = "???";
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- if ((savedInstanceState != null) && savedInstanceState.containsKey(KEY_CONTENT)) {
- mContent = savedInstanceState.getString(KEY_CONTENT);
- }
- TextView text = new TextView(getActivity());
- text.setGravity(Gravity.CENTER);
- text.setText(mContent);
- text.setTextSize(20 * getResources().getDisplayMetrics().density);
- text.setPadding(20, 20, 20, 20);
- LinearLayout layout = new LinearLayout(getActivity());
- layout.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
- layout.setGravity(Gravity.CENTER);
- layout.addView(text);
- return layout;
- }
- @Override
- public void onSaveInstanceState(Bundle outState) {
- super.onSaveInstanceState(outState);
- outState.putString(KEY_CONTENT, mContent);
- }
- }
- ViewPageFragmentAdapter
- ------------------------
- public class ViewPageFragmentAdapter extends FragmentPagerAdapter {
- protected static final String[] CONTENT = new String[] { "NearBy", "Cities", "Custom", };
- private int mCount = CONTENT.length;
- public ViewPageFragmentAdapter(FragmentManager supportFragmentManager) {
- super(supportFragmentManager);
- }
- @Override
- public Fragment getItem(int position) {
- return ViewPageFragment.newInstance(CONTENT[position % CONTENT.length]);
- }
- @Override
- public int getCount() {
- return mCount;
- }
- public void setCount(int count) {
- if (count > 0 && count <= 10) {
- mCount = count;
- notifyDataSetChanged();
- }
- }
- }
- view_page.xml
- --------------
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent">
- <com.viewpagerindicator.TitlePageIndicator
- android:id="@+id/indicator"
- android:padding="10dip"
- android:layout_height="wrap_content"
- android:layout_width="fill_parent"
- />
- <android.support.v4.view.ViewPager
- android:id="@+id/pager"
- android:layout_width="fill_parent"
- android:layout_height="0dp"
- android:layout_weight="1"
- />
- </LinearLayout>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement