Simulate Android ViewPager Animation with View in front of it -
i simulate animation of view pager, changing background color, idea have view (or more) stays in front of background @ time (even when switching it). suggestion nice hear.
edit: example of i`m trying achieve: http://www.youtube.com/watch?v=mb7gmfmxlvy
there couple of ways how can done. can create views different background , use animations desired effect. however, since mentioned viewpager, , if need.. easier solution use relative layout , overlay other views on top of view pager.
take here:
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v4.view.viewpager android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/viewpager" android:layout_alignparentright="false"/> <!-- other views go here --> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/imageview" android:layout_centervertical="true" android:layout_centerhorizontal="true" android:src="@drawable/ic_launcher"/> </relativelayout> then assign views view pager different background colors. (note: written code in short time explain solution)
public class mainactivity extends activity { @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); colors = new arraylist<integer>(); colors.add(color.red); colors.add(color.black); colors.add(color.blue); colors.add(color.green); colors.add(color.yellow); mviewpager = (viewpager)findviewbyid(r.id.viewpager); mpageadapter = new mypageadapter(); mviewpager.setadapter(mpageadapter); mpageadapter.notifydatasetchanged(); } private mypageadapter mpageadapter; private viewpager mviewpager; private list<integer> colors; class mypageadapter extends pageradapter { @override public int getcount() { return colors.size(); } @override public object instantiateitem(viewgroup container, int position) { relativelayout view = new relativelayout(getapplicationcontext()); view.setbackgroundcolor(colors.get(position)); ((viewpager) mviewpager).addview(view, 0); return view; } @override public void destroyitem(viewgroup container, int position, object view) { ((viewpager) mviewpager).removeview((relativelayout) view); } @override public boolean isviewfromobject(view view, object o) { return view == ((relativelayout) o); } } } so way can achieve properties of view pager (gestures, slide effect etc.) without writing code).
Comments
Post a Comment