Note: Require "android-support-v4.jar" and its size greater than 3mb.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* main.xml | |
<?xml version="1.0" encoding="utf-8"?> | |
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android" | |
android:id="@+id/viewpager" | |
android:layout_width="fill_parent" | |
android:layout_height="fill_parent" | |
android:background="@drawable/background" > | |
<android.support.v4.view.PagerTabStrip | |
android:layout_width="wrap_content" | |
android:layout_height="wrap_content" | |
android:layout_gravity="top" /> | |
</android.support.v4.view.ViewPager> | |
*/ | |
//ViewPager Adapter | |
public class ViewPagerAdapter extends PagerAdapter { | |
// ---------------------------------------------------------------- | |
private Gallery gallery_disc, gallery_fest, gallery_combo; | |
private ImageView selectedImageView; | |
private ImageView leftArrowImageView; | |
private ImageView rightArrowImageView; | |
private int discPos, festPos, comboPos = 0; | |
private List<String> drawable, d1, d2, d3; | |
private GalleryImageAdapter disc_adapter, fest_adapter, combo_adapter; | |
TextView tvOfferName_disc, tvDesc_disc, tvItems_disc, tvDiscount_disc; | |
TextView tvOfferName_fest, tvDesc_fest, tvItems_fest, tvDiscount_fest; | |
TextView tvOfferName_combo, tvDesc_combo, tvItems_combo, tvDiscount_combo; | |
String discOffer[][]; | |
String comboOffer[][]; | |
String festOffer[][]; | |
String temp = "% Discount on Following Items:"; | |
ProgressDialog pd; | |
// -------------------------------------- | |
private static String[] titles = new String[] { "Sport", "Music", | |
"Games" }; | |
private final Context context; | |
private int[] scrollPosition = new int[titles.length]; | |
public ViewPagerAdapter(Context context) { | |
this.context = context; | |
for (int i = 0; i < titles.length; i++) { | |
scrollPosition[i] = 0; | |
} | |
} | |
@Override | |
public String getPageTitle(int position) { | |
return titles[position]; | |
} | |
@Override | |
public int getCount() { | |
return titles.length; | |
} | |
@Override | |
public Object instantiateItem(View pager, final int position) { | |
//Instantiate your all controls here | |
LinearLayout llmain=new LinearLayout(context); | |
((ViewPager) pager).addView(llmain, 0); | |
return llmain; | |
} | |
@Override | |
public void destroyItem(View pager, int position, Object view) { | |
((ViewPager) pager).removeView((LinearLayout) view); | |
} | |
@Override | |
public boolean isViewFromObject(View view, Object object) { | |
return view.equals(object); | |
} | |
@Override | |
public void finishUpdate(View view) { | |
} | |
@Override | |
public void restoreState(Parcelable p, ClassLoader c) { | |
if (p instanceof ScrollState) { | |
scrollPosition = ((ScrollState) p).getScrollPos(); | |
} | |
} | |
@Override | |
public Parcelable saveState() { | |
return new ScrollState(scrollPosition); | |
} | |
@Override | |
public void startUpdate(View view) { | |
} | |
} | |
//To Maintain Scroll State after each Swipe | |
public class ScrollState implements Parcelable | |
{ | |
private int[] scrollPos; | |
public static Parcelable.Creator<ScrollState> CREATOR = new Parcelable.Creator<ScrollState>() | |
{ | |
@Override | |
public ScrollState createFromParcel( Parcel source ) | |
{ | |
int size = source.readInt(); | |
int[] scrollPos = new int[ size ]; | |
source.readIntArray( scrollPos ); | |
return new ScrollState( scrollPos ); | |
} | |
@Override | |
public ScrollState[] newArray( int size ) | |
{ | |
return new ScrollState[ size ]; | |
} | |
}; | |
public ScrollState( int[] scrollPos ) | |
{ | |
this.scrollPos = scrollPos; | |
} | |
@Override | |
public int describeContents() | |
{ | |
return 0; | |
} | |
@Override | |
public void writeToParcel( Parcel dest, int flags ) | |
{ | |
dest.writeInt( scrollPos.length ); | |
dest.writeIntArray( scrollPos ); | |
} | |
public int[] getScrollPos() | |
{ | |
return scrollPos; | |
} | |
} |
No comments:
Post a Comment