ViewPager এর পেজ জুরে পরিবর্তন করতে বিল্ট-ইন সুইপ জেশচার আছে, এবং তারা বাই ডিফল্ট স্ক্রিন স্লাইড অ্যানিমেশন প্রদর্শন করে, তাই আপনাকে কোন টা তৈরী করতে হবে না। ViewPager গুলো নতুন পেজ প্রদর্শন করার জন্য একটি যোগান হিসাবে PagerAdapter ব্যবহার করে, সুতরাং PagerAdapter ফ্রাগমেন্ট ক্লাস ব্যবহার করবে যা পুর্বে তৈরী করা হয়েছিল।
শুরু করার জন্য, একটি লেআউট তৈরী করুন একটি ViewPager ধারন করে:
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
একটি একটিভিটি তৈরী করুন যা নি¤েœাক্ত বিষয়গুলো করে থাকে:
ViewPager সহকারে লেআউট হতে কনটেন্ট ভিউ সেট করুন
একটি ক্লাস তৈরী করুন যা FragmentStatePagerAdapter এবস্ট্রাক্ট ক্লাসকে প্রসারিত করে এবং নতুন পেজ হিসাবে ScreenSlidePageFragment এর ইনসটেন্স যোগান দিতে getItem()পদ্ধতি বাস্তবায়ন করুন। পেজ অ্যাডাপটর আরও চায় যে আপনি getCount()পদ্ধতি বাস্তবায়ন করুন যা অ্যাডাপটর যে পেজ তৈরী করবে তার সংখ্যা কে ফেরত আনে (উদাহরনে ৫ টি)।
ViewPager এ চধমবৎঅফধঢ়ঃবৎযুক্ত করুন।
ফ্রাগমেন্টের ভার্চুয়াল স্ট্যাকের মধ্যে ডিভাইসের ব্যাক বাটন পেছনদিকে দেয়ার মাধ্যমে চালিত করুন।
public class ScreenSlidePagerActivity extends FragmentActivity {
/**
* The number of pages (wizard steps) to show in this demo.
*/
private static final int NUM_PAGES = 5;
/**
* The pager widget, which handles animation and allows swiping horizontally to access previous
* and next wizard steps.
*/
private ViewPager mPager;
/**
* The pager adapter, which provides the pages to the view pager widget.
*/
private PagerAdapter mPagerAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_screen_slide_pager);
// Instantiate a ViewPager and a PagerAdapter.
mPager = (ViewPager) findViewById(R.id.pager);
mPagerAdapter = new ScreenSlidePagerAdapter(getFragmentManager());
mPager.setAdapter(mPagerAdapter);
}
@Override
public void onBackPressed() {
if (mPager.getCurrentItem() == 0) {
// If the user is currently looking at the first step, allow the system to handle the
// Back button. This calls finish() on this activity and pops the back stack.
super.onBackPressed();
} else {
// Otherwise, select the previous step.
mPager.setCurrentItem(mPager.getCurrentItem() - 1);
}
}
/**
* A simple pager adapter that represents 5 ScreenSlidePageFragment objects, in
* sequence.
*/
private class ScreenSlidePagerAdapter extends FragmentStatePagerAdapter {
public ScreenSlidePagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return new ScreenSlidePageFragment();
}
@Override
public int getCount() {
return NUM_PAGES;
}
}
}