2014-04-23 8 views
5

का उपयोग करके पेजर में एनीमेशन रखें, पेज पेज स्क्रॉल में पेज स्क्रॉल करते समय मैं एनीमेशन (ज़ूम इन-आउट, फीड इन-आउट, 3 डी इत्यादि) रखना चाहता हूं। मेरा कोड निम्नलिखित है।पेज स्क्रॉल में एंड्रॉइड पुट एनीमेशन पेज 0 स्क्रू

मेरे प्रथम श्रेणी:

public class ViewPagerMainActivity extends FragmentActivity implements 
     OnClickListener, OnPageChangeListener { 

    // all variable declare here 
    @SuppressLint("NewApi") 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 



     getWindow().setFlags(
     WindowManager.LayoutParams.FLAG_FULLSCREEN 
       | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD, 
     WindowManager.LayoutParams.FLAG_FULLSCREEN 
       | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD 
       ); 

    setTheme(android.R.style.Theme_Light_NoTitleBar); 


    setContentView(R.layout.view_pager_main); 
    // other code here 

    } 

    private class MyPagerAdapter extends FragmentPagerAdapter { 

    public MyPagerAdapter(
     android.support.v4.app.FragmentManager fragmentManager) { 
    super(fragmentManager); 
    } 

    @Override 
public Fragment getItem(int pos) { 
    switch (pos) { 

    case 0: 
     return FirstFragment.newInstance(""); 

    case 1: 
     return SecondFragment.newInstance(""); 

    default: 
     return SecondFragment.newInstance("Default"); 
    } 
    } 

    @Override 
     public int getCount() { 
      return 2; // return no of fragment created by us 
     } 
    } 

    @Override 
      public void onClick(View v) { 

     } 

    @Override 
     public void onPageScrollStateChanged(int arg0) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
     public void onPageScrolled(int arg0, float arg1, int arg2) { 
    // TODO Auto-generated method stub 

} 

    @Override 
    public void onPageSelected(int arg0) { 
    // TODO Auto-generated method stub 

    } 
    @Override 
    public void onBackPressed() { 

} 

    } 

दूसरा फ़ाइल:

 public class FirstFragment extends Fragment implements OnTouchListener { 

    // all variable decalre here 
    @Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 

    getActivity().setTheme(android.R.style.Theme_Light_NoTitleBar); 
    v = inflater.inflate(R.layout.sliding_lock_pager, container, false); 

      // other code here 
    return v; 
    } 

    public static FirstFragment newInstance(String text) { 

     FirstFragment f = new FirstFragment(); 
     Bundle b = new Bundle(); 
     b.putString("msg", text); 
     f.setArguments(b); 

     return f; 
    } 

    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
    return false; 
    } 

तीसरा यहाँ फ़ाइल:

 public class SecondFragment extends Fragment implements OnClickListener { 

        // all varible decalare here 
      @Override 
      public View onCreateView(LayoutInflater inflater, ViewGroup container, 
        Bundle savedInstanceState) { 
       getActivity().setTheme(android.R.style.Theme_Light_NoTitleBar); 
       View v = inflater.inflate(R.layout.password, container, false); 

     // other code here 
     // this method move to main pager 
    txtBack.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 

     ((ViewPagerMainActivity)getActivity()).pager.setCurrentItem(0); 
      } 
     }); 

     return v; 
    } 

    public static SecondFragment newInstance(String text) { 

     SecondFragment f = new SecondFragment(); 
     Bundle b = new Bundle(); 
     b.putString("msg", text); 
     f.setArguments(b); 
     return f; 
     } 

     @Override 
public void onClick(View v) { 
    // TODO Auto-generated method stub 

} 

मैं उस समय जब पेजर स्क्रॉल एनीमेशन डाल या ((ViewPagerMainActivity)getActivity()).pager.setCurrentItem(0); कॉल करना चाहते हैं जब पेजर स्क्रॉल अगली पेज एनीमेशन के साथ ज़ूमिन-आउट की तरह प्रदर्शित करता है तो कृपया कोई मेरी मदद करें यह कैसे करें।

उत्तर

5

आप ViewPager को PagerTransformer संलग्न कर सकते हैं:

mViewPager.setPageTransformer(false, new ViewPager.PageTransformer() { 
@Override 
public void transformPage(View page, float position) { 
    // do transformation here 
    } 
}); 

आप नीचे दिए गए लिंक के माध्यम से जा सकते हैं आपकी मदद करेगा जो:

http://developer.android.com/training/animation/screen-slide.html#pagetransformer

http://andraskindler.com/blog/2013/create-viewpager-transitions-a-pagertransformer-example/

+0

आपका बहुत-बहुत ऐसा करने के लिए उपयोगी धन्यवाद मुझे +10 मेरी तरफ से वोट .. –

संबंधित मुद्दे