欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android viewpager 3D畫廊的實現(xiàn)方法

 更新時間:2017年02月17日 10:10:34   作者:帥氣的鉛筆  
ViewPager在開發(fā)中的使用頻率非常的高,接下來通過本文給大家分享android viewpager 3D畫廊的實現(xiàn)方法,需要的朋友參考下吧

ViewPager有個方法叫做:

setPageTransformer(boolean reverseDrawingOrder, PageTransformer transformer)

用于設(shè)置ViewPager切換時的動畫效果。

這里我們只要自定義一個PageTransformer來實現(xiàn)我們需要的動畫偏移效果就好了!

public class ScrollOffsetTransformer implements PageTransformer {
  private static final float MIN_SCALE = 0.85F;
  /**
   * position參數(shù)指明給定頁面相對于屏幕中心的位置。它是一個動態(tài)屬性,會隨著頁面的滾動而改變。
   * 當一個頁面(page)填充整個屏幕時,positoin值為0; 當一個頁面(page)剛剛離開屏幕右(左)側(cè)時,position值為1(-1);
   * 當兩個頁面分別滾動到一半時,其中一個頁面是-0.5,另一個頁面是0.5。
   * 基于屏幕上頁面的位置,通過諸如setAlpha()、setTranslationX
   * ()或setScaleY()方法來設(shè)置頁面的屬性,創(chuàng)建自定義的滑動動畫。
   */
  @Override
  public void transformPage(View view, float position) {
    // TODO Auto-generated method stub
    float scaleFactor = Math.max(MIN_SCALE, 1 - Math.abs(position));
    float rotate = 30 * Math.abs(position);
    float transla = 50 * Math.abs(position);
    if (position > 0) {
      view.setScaleX(scaleFactor);
      view.setScaleY(scaleFactor);
      view.setRotationY(-rotate);
      view.setTranslationX(-transla);
    } else {
      view.setScaleX(scaleFactor);
      view.setScaleY(scaleFactor);
      view.setRotationY(rotate);
      view.setTranslationX(transla);
    }
  }
}

然后

viewPager

加上

 viewPager.setPageTransformer(true, new ScrollOffsetTransformer())

以上所述是小編給大家介紹的Android viewpager 3D畫廊的實現(xiàn)方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評論