20 Eylül 2016 Salı

 Android ekranında nesneleri ekran ortasına animasyon lu bir şekilde alabilirsiniz. aşağıda ki kod örneğide RelativeLayout bir ekran tasarımı üzerinden gerçekleştiriliyor.

  "R.id.roodLayout" alanına ekranın relativelayout isim id'si eklenir.
   Ekranın ortasına cekmek istediğiniz nesneyi  Rekli belirttiğimiz kod satırları gibi kullanarak ortalayabilirsiniz.
  
  img = (ImageView) findViewById( R.id.img3 );                
            moveViewToScreenCenter( img );
 
 
private void moveViewToScreenCenter( View view )
{
    RelativeLayout root = (RelativeLayout) findViewById( R.id.rootLayout );
    DisplayMetrics dm = new DisplayMetrics();
    this.getWindowManager().getDefaultDisplay().getMetrics( dm );
    int statusBarOffset = dm.heightPixels - root.getMeasuredHeight();

    int originalPos[] = new int[2];
    view.getLocationOnScreen( originalPos );

    int xDest = dm.widthPixels/2;
    xDest -= (view.getMeasuredWidth()/2);
    int yDest = dm.heightPixels/2 - (view.getMeasuredHeight()/2) - statusBarOffset;

    TranslateAnimation anim = new TranslateAnimation( 0, xDest - originalPos[0] , 0, yDest - originalPos[1] );
    anim.setDuration(1000);
    anim.setFillAfter( true );
    view.startAnimation(anim);
}
Kodlar linkinden örnek alınmıştır. 

0 yorum :

Yorum Gönder