Android Open Source - Aviary-Android-SDK Aviary Bottom Bar View Flipper






From Project

Back to project page Aviary-Android-SDK.

License

The source code is released under:

AVIARY API TERMS OF USE Full Legal Agreement The following terms and conditions and the terms and conditions at http://www.aviary.com/terms (collectively, the ?Terms??) govern your use of any and ...

If you think the Android project Aviary-Android-SDK listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.aviary.android.feather.widget;
/*from   w w  w. j ava  2 s  . c om*/
import it.sephiroth.android.library.widget.HListView;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.widget.ViewFlipper;

import com.aviary.android.feather.R;

public class AviaryBottomBarViewFlipper extends ViewFlipper implements OnClickListener {

  public static interface OnViewChangingStatusListener {

    void OnOpenStart();

    void OnOpenEnd();

    void OnCloseStart();

    void OnCloseEnd();
  }

  public static interface OnBottomBarItemClickListener {
    void onBottomBarItemClick( int id );
  }

  private View mLogo;
  private OnViewChangingStatusListener mListener;
  private OnBottomBarItemClickListener mBottomClickListener;

  public AviaryBottomBarViewFlipper ( Context context ) {
    super( context );
  }

  public AviaryBottomBarViewFlipper ( Context context, AttributeSet attrs ) {
    super( context, attrs );
  }

  @Override
  protected void onFinishInflate() {

    mLogo = findViewById( R.id.aviary_white_logo );
    mLogo.setOnClickListener( this );

    super.onFinishInflate();
  }

  public void setOnViewChangingStatusListener( OnViewChangingStatusListener listener ) {
    mListener = listener;
  }

  public void setOnBottomBarItemClickListener( OnBottomBarItemClickListener listener ) {
    mBottomClickListener = listener;
  }

  public boolean open() {

    if ( getDisplayedChild() == 1 ) {

      Animation inAnimation = getInAnimation();

      if ( null != inAnimation ) {

        if ( inAnimation.hasStarted() && !inAnimation.hasEnded() ) {
          return false;
        }

        inAnimation.setAnimationListener( new AnimationListener() {

          @Override
          public void onAnimationStart( Animation animation ) {
            getChildAt( 0 ).setVisibility( View.VISIBLE );
            if ( null != mListener ) mListener.OnOpenStart();
          }

          @Override
          public void onAnimationRepeat( Animation animation ) {}

          @Override
          public void onAnimationEnd( Animation animation ) {
            if ( null != mListener ) mListener.OnOpenEnd();
            getChildAt( 1 ).setVisibility( View.GONE );
          }
        } );
      }

      setDisplayedChild( 0 );
      return true;
    }
    return false;
  }

  public boolean close() {

    if ( getDisplayedChild() == 0 ) {

      Animation inAnimation = getInAnimation();

      if ( null != inAnimation ) {

        if ( inAnimation.hasStarted() && !inAnimation.hasEnded() ) {
          return false;
        }

        inAnimation.setAnimationListener( new AnimationListener() {

          @Override
          public void onAnimationStart( Animation animation ) {
            getChildAt( 1 ).setVisibility( View.VISIBLE );
            if ( null != mListener ) mListener.OnCloseStart();
          }

          @Override
          public void onAnimationRepeat( Animation animation ) {}

          @Override
          public void onAnimationEnd( Animation animation ) {
            if ( null != mListener ) mListener.OnCloseEnd();
            getChildAt( 0 ).setVisibility( View.GONE );
          }
        } );
      }

      setDisplayedChild( 1 );
      return true;
    }
    return false;
  }

  public boolean opened() {
    return getDisplayedChild() == 0;
  }

  /**
   * Return the child used to populate the tools
   * 
   * @return
   */
  public ViewGroup getContentPanel() {
    return (ViewGroup) getChildAt( 0 );
  }

  public HListView getToolsListView() {
    return (HListView) findViewById( R.id.aviary_tools_listview );
  }

  public void toggleLogoVisibility( boolean visible ) {
    if( visible )
      findViewById( R.id.aviary_white_logo ).setVisibility( View.VISIBLE );
    else
      findViewById( R.id.aviary_white_logo ).setVisibility( View.INVISIBLE );
  }

  @Override
  public void onClick( View v ) {
    if ( null != v ) {
      final int id = v.getId();

      if ( null != mBottomClickListener ) {
        mBottomClickListener.onBottomBarItemClick( id );
      }
    }
  }
}




Java Source Code List

com.aviary.android.feather.AlertActivity.java
com.aviary.android.feather.AviaryMainController.java
com.aviary.android.feather.FeatherActivity.java
com.aviary.android.feather.async_tasks.AsyncImageManager.java
com.aviary.android.feather.async_tasks.DownloadImageAsyncTask.java
com.aviary.android.feather.async_tasks.ExifTask.java
com.aviary.android.feather.effects.AbstractContentPanel.java
com.aviary.android.feather.effects.AbstractOptionPanel.java
com.aviary.android.feather.effects.AbstractPanelLoaderService.java
com.aviary.android.feather.effects.AbstractPanel.java
com.aviary.android.feather.effects.AdjustEffectPanel.java
com.aviary.android.feather.effects.BordersPanel.java
com.aviary.android.feather.effects.ColorSplashPanel.java
com.aviary.android.feather.effects.CropPanel.java
com.aviary.android.feather.effects.DelayedSpotDrawPanel.java
com.aviary.android.feather.effects.DrawingPanel.java
com.aviary.android.feather.effects.EffectsPanel.java
com.aviary.android.feather.effects.EnhanceEffectPanel.java
com.aviary.android.feather.effects.MemePanel.java
com.aviary.android.feather.effects.NativeEffectRangePanel.java
com.aviary.android.feather.effects.SimpleStatusMachine.java
com.aviary.android.feather.effects.SliderEffectPanel.java
com.aviary.android.feather.effects.StickersPanel.java
com.aviary.android.feather.effects.TextPanel.java
com.aviary.android.feather.effects.TiltShiftPanel.java
com.aviary.android.feather.graphics.CdsPreviewTransformer.java
com.aviary.android.feather.graphics.GalleryBottomIndicatorDrawable.java
com.aviary.android.feather.graphics.GalleryTopIndicatorDrawable.java
com.aviary.android.feather.graphics.GlowBitmapDrawable.java
com.aviary.android.feather.graphics.GlowDrawable.java
com.aviary.android.feather.graphics.PluginDividerDrawable.java
com.aviary.android.feather.graphics.PreviewFillColorDrawable.java
com.aviary.android.feather.graphics.PreviewSpotDrawable.java
com.aviary.android.feather.graphics.RepeatableHorizontalDrawable.java
com.aviary.android.feather.opengl.AviaryGLSurfaceView.java
com.aviary.android.feather.utils.PackIconCallable.java
com.aviary.android.feather.utils.SimpleBitmapCache.java
com.aviary.android.feather.utils.ThreadUtils.java
com.aviary.android.feather.utils.TypefaceUtils.java
com.aviary.android.feather.utils.UIUtils.java
com.aviary.android.feather.widget.AdjustImageView.java
com.aviary.android.feather.widget.AviaryAbsSpinner.java
com.aviary.android.feather.widget.AviaryAdapterView.java
com.aviary.android.feather.widget.AviaryBadgeToolLayout.java
com.aviary.android.feather.widget.AviaryBottomBarViewFlipper.java
com.aviary.android.feather.widget.AviaryButton.java
com.aviary.android.feather.widget.AviaryEdgeEffect.java
com.aviary.android.feather.widget.AviaryGalleryTopIndicatorView.java
com.aviary.android.feather.widget.AviaryGallery.java
com.aviary.android.feather.widget.AviaryHighlightImageButton.java
com.aviary.android.feather.widget.AviaryImageRestoreSwitcher.java
com.aviary.android.feather.widget.AviaryImageSwitcher.java
com.aviary.android.feather.widget.AviaryNavBarViewFlipper.java
com.aviary.android.feather.widget.AviarySeekBar.java
com.aviary.android.feather.widget.AviaryTextView.java
com.aviary.android.feather.widget.AviaryToast.java
com.aviary.android.feather.widget.AviaryToggleButton.java
com.aviary.android.feather.widget.AviaryWheel.java
com.aviary.android.feather.widget.AviaryWorkspaceIndicator.java
com.aviary.android.feather.widget.AviaryWorkspace.java
com.aviary.android.feather.widget.CellLayout.java
com.aviary.android.feather.widget.CropImageView.java
com.aviary.android.feather.widget.DrawableHighlightView.java
com.aviary.android.feather.widget.EffectThumbLayout.java
com.aviary.android.feather.widget.HighlightView.java
com.aviary.android.feather.widget.IAPBuyButton.java
com.aviary.android.feather.widget.IAPDialogDetail.java
com.aviary.android.feather.widget.IAPDialogList.java
com.aviary.android.feather.widget.IAPDialogMain.java
com.aviary.android.feather.widget.ImageViewDrawableOverlay.java
com.aviary.android.feather.widget.ImageViewSpotDraw.java
com.aviary.android.feather.widget.ImageViewTiltiShiftTouch.java
com.aviary.android.feather.widget.ImageViewTouchAndDraw.java
com.aviary.android.feather.widget.PointCloud.java
com.aviary.android.feather.widget.ScrollerRunnable.java
com.aviary.android.feather.widget.VibrationHelper.java
com.aviary.android.feather.widget.VibrationWidget.java