package org.android.textbook.lesson3.viewpagersample;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
public class ViewPagerSample extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_view_pager_sample);
ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);
PagerAdapter pagerAdapter =
new ScreenPagerAdapter(getApplicationContext());
viewPager.setAdapter(pagerAdapter);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.view_pager_sample, menu);
return true;
}
private class ScreenPagerAdapter extends PagerAdapter {
private LayoutInflater mLayoutInflater = null;
private final int[] PAGE_RES = new int[] {
R.layout.page1,
R.layout.page2,
R.layout.page3
};
public ScreenPagerAdapter(Context context) {
super();
mLayoutInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public int getCount() {
return PAGE_RES.length;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
LinearLayout page = (LinearLayout) mLayoutInflater.inflate(
PAGE_RES[position], null);
container.addView(page);
return page;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view.equals(object);
}
}
}