aboutsummaryrefslogtreecommitdiff
path: root/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java')
-rw-r--r--sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java82
1 files changed, 82 insertions, 0 deletions
diff --git a/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java
new file mode 100644
index 0000000..3f9a79d
--- /dev/null
+++ b/sample/src/main/java/com/davemorrissey/labs/subscaleview/test/viewpager/ViewPagerActivity.java
@@ -0,0 +1,82 @@
+package com.davemorrissey.labs.subscaleview.test.viewpager;
+
+import android.os.Bundle;
+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.view.View;
+
+import com.davemorrissey.labs.subscaleview.test.AbstractPagesActivity;
+import com.davemorrissey.labs.subscaleview.test.Page;
+import com.davemorrissey.labs.subscaleview.test.R;
+
+import java.util.Arrays;
+
+import static com.davemorrissey.labs.subscaleview.test.R.layout.view_pager;
+import static com.davemorrissey.labs.subscaleview.test.R.string.pager_p1_subtitle;
+import static com.davemorrissey.labs.subscaleview.test.R.string.pager_p1_text;
+import static com.davemorrissey.labs.subscaleview.test.R.string.pager_p2_subtitle;
+import static com.davemorrissey.labs.subscaleview.test.R.string.pager_p2_text;
+import static com.davemorrissey.labs.subscaleview.test.R.string.pager_title;
+
+public class ViewPagerActivity extends AbstractPagesActivity {
+
+ private static final String[] IMAGES = { "sanmartino.jpg", "swissroad.jpg" };
+
+ public ViewPagerActivity() {
+ super(pager_title, view_pager, Arrays.asList(
+ new Page(pager_p1_subtitle, pager_p1_text),
+ new Page(pager_p2_subtitle, pager_p2_text)
+ ));
+ }
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ ViewPager horizontalPager = findViewById(R.id.horizontal_pager);
+ horizontalPager.setAdapter(new ScreenSlidePagerAdapter(getSupportFragmentManager()));
+ ViewPager verticalPager = findViewById(R.id.vertical_pager);
+ verticalPager.setAdapter(new ScreenSlidePagerAdapter(getSupportFragmentManager()));
+ }
+
+ @Override
+ public void onBackPressed() {
+ ViewPager viewPager = findViewById(getPage() == 0 ? R.id.horizontal_pager : R.id.vertical_pager);
+ if (viewPager.getCurrentItem() == 0) {
+ super.onBackPressed();
+ } else {
+ viewPager.setCurrentItem(viewPager.getCurrentItem() - 1);
+ }
+ }
+
+ @Override
+ protected void onPageChanged(int page) {
+ if (getPage() == 0) {
+ findViewById(R.id.horizontal_pager).setVisibility(View.VISIBLE);
+ findViewById(R.id.vertical_pager).setVisibility(View.GONE);
+ } else {
+ findViewById(R.id.horizontal_pager).setVisibility(View.GONE);
+ findViewById(R.id.vertical_pager).setVisibility(View.VISIBLE);
+ }
+ }
+
+ private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter {
+ ScreenSlidePagerAdapter(FragmentManager fm) {
+ super(fm);
+ }
+
+ @Override
+ public Fragment getItem(int position) {
+ ViewPagerFragment fragment = new ViewPagerFragment();
+ fragment.setAsset(IMAGES[position]);
+ return fragment;
+ }
+
+ @Override
+ public int getCount() {
+ return IMAGES.length;
+ }
+ }
+
+}