Example usage for android.view.animation Animation setAnimationListener

List of usage examples for android.view.animation Animation setAnimationListener

Introduction

In this page you can find the example usage for android.view.animation Animation setAnimationListener.

Prototype

public void setAnimationListener(AnimationListener listener) 

Source Link

Document

Binds an animation listener to this animation.

Usage

From source file:net.bluehack.ui.IntroActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    setTheme(R.style.Theme_TMessages);/*from ww w  .j  a v a2s.  c  o  m*/
    super.onCreate(savedInstanceState);
    Theme.loadRecources(this);
    requestWindowFeature(Window.FEATURE_NO_TITLE);

    if (AndroidUtilities.isTablet()) {
        setContentView(R.layout.intro_layout_tablet);
        View imageView = findViewById(R.id.background_image_intro);
        BitmapDrawable drawable = (BitmapDrawable) getResources().getDrawable(R.drawable.catstile);
        drawable.setTileModeXY(Shader.TileMode.REPEAT, Shader.TileMode.REPEAT);
        imageView.setBackgroundDrawable(drawable);
    } else {
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        setContentView(R.layout.intro_layout);
    }

    if (LocaleController.isRTL) {
        icons = new int[] { R.drawable.intro7, R.drawable.intro6, R.drawable.intro5, R.drawable.intro4,
                R.drawable.intro3, R.drawable.intro2, R.drawable.intro1 };
        titles = new int[] { R.string.Page7Title, R.string.Page6Title, R.string.Page5Title, R.string.Page4Title,
                R.string.Page3Title, R.string.Page2Title, R.string.Page1Title };
        messages = new int[] { R.string.Page7Message, R.string.Page6Message, R.string.Page5Message,
                R.string.Page4Message, R.string.Page3Message, R.string.Page2Message, R.string.Page1Message };
    } else {
        icons = new int[] { R.drawable.intro1, R.drawable.intro2, R.drawable.intro3, R.drawable.intro4,
                R.drawable.intro5, R.drawable.intro6, R.drawable.intro7 };
        titles = new int[] { R.string.Page1Title, R.string.Page2Title, R.string.Page3Title, R.string.Page4Title,
                R.string.Page5Title, R.string.Page6Title, R.string.Page7Title };
        messages = new int[] { R.string.Page1Message, R.string.Page2Message, R.string.Page3Message,
                R.string.Page4Message, R.string.Page5Message, R.string.Page6Message, R.string.Page7Message };
    }
    viewPager = (ViewPager) findViewById(R.id.intro_view_pager);
    TextView startMessagingButton = (TextView) findViewById(R.id.start_messaging_button);
    startMessagingButton
            .setText(LocaleController.getString("StartMessaging", R.string.StartMessaging).toUpperCase());
    if (Build.VERSION.SDK_INT >= 21) {
        StateListAnimator animator = new StateListAnimator();
        animator.addState(new int[] { android.R.attr.state_pressed }, ObjectAnimator
                .ofFloat(startMessagingButton, "translationZ", AndroidUtilities.dp(2), AndroidUtilities.dp(4))
                .setDuration(200));
        animator.addState(new int[] {}, ObjectAnimator
                .ofFloat(startMessagingButton, "translationZ", AndroidUtilities.dp(4), AndroidUtilities.dp(2))
                .setDuration(200));
        startMessagingButton.setStateListAnimator(animator);
    }
    topImage1 = (ImageView) findViewById(R.id.icon_image1);
    topImage2 = (ImageView) findViewById(R.id.icon_image2);
    bottomPages = (ViewGroup) findViewById(R.id.bottom_pages);
    topImage2.setVisibility(View.GONE);
    viewPager.setAdapter(new IntroAdapter());
    viewPager.setPageMargin(0);
    viewPager.setOffscreenPageLimit(1);
    viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int i) {

        }

        @Override
        public void onPageScrollStateChanged(int i) {
            if (i == ViewPager.SCROLL_STATE_IDLE || i == ViewPager.SCROLL_STATE_SETTLING) {
                if (lastPage != viewPager.getCurrentItem()) {
                    lastPage = viewPager.getCurrentItem();

                    final ImageView fadeoutImage;
                    final ImageView fadeinImage;
                    if (topImage1.getVisibility() == View.VISIBLE) {
                        fadeoutImage = topImage1;
                        fadeinImage = topImage2;

                    } else {
                        fadeoutImage = topImage2;
                        fadeinImage = topImage1;
                    }

                    fadeinImage.bringToFront();
                    fadeinImage.setImageResource(icons[lastPage]);
                    fadeinImage.clearAnimation();
                    fadeoutImage.clearAnimation();

                    Animation outAnimation = AnimationUtils.loadAnimation(IntroActivity.this,
                            R.anim.icon_anim_fade_out);
                    outAnimation.setAnimationListener(new Animation.AnimationListener() {
                        @Override
                        public void onAnimationStart(Animation animation) {
                        }

                        @Override
                        public void onAnimationEnd(Animation animation) {
                            fadeoutImage.setVisibility(View.GONE);
                        }

                        @Override
                        public void onAnimationRepeat(Animation animation) {

                        }
                    });

                    Animation inAnimation = AnimationUtils.loadAnimation(IntroActivity.this,
                            R.anim.icon_anim_fade_in);
                    inAnimation.setAnimationListener(new Animation.AnimationListener() {
                        @Override
                        public void onAnimationStart(Animation animation) {
                            fadeinImage.setVisibility(View.VISIBLE);
                        }

                        @Override
                        public void onAnimationEnd(Animation animation) {
                        }

                        @Override
                        public void onAnimationRepeat(Animation animation) {

                        }
                    });

                    fadeoutImage.startAnimation(outAnimation);
                    fadeinImage.startAnimation(inAnimation);
                }
            }
        }
    });

    startMessagingButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if (startPressed) {
                return;
            }
            startPressed = true;
            Intent intent2 = new Intent(IntroActivity.this, LaunchActivity.class);
            intent2.putExtra("fromIntro", true);
            startActivity(intent2);
            finish();
        }
    });
    if (BuildVars.DEBUG_VERSION) {
        startMessagingButton.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {
                ConnectionsManager.getInstance().switchBackend();
                return true;
            }
        });
    }

    justCreated = true;
}

From source file:gov.wa.wsdot.android.wsdot.ui.mountainpasses.passitem.MountainPassItemActivity.java

private void startRefreshAnimation() {
    MenuItem item = mToolbar.getMenu().findItem(MENU_ITEM_REFRESH);
    if (item == null) {
        Log.e(TAG, "null");
        return;/*from  w  w w  .j  a  v  a 2s  .  c om*/
    }
    // define the animation for rotation
    Animation animation = new RotateAnimation(360.0f, 0.0f, Animation.RELATIVE_TO_SELF, 0.5f,
            Animation.RELATIVE_TO_SELF, 0.5f);
    animation.setDuration(1000);

    animation.setRepeatCount(Animation.INFINITE);

    animation.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {
        }

        @Override
        public void onAnimationEnd(Animation animation) {
            mToolbar.getMenu().getItem(MENU_ITEM_REFRESH).setActionView(null);
            mToolbar.getMenu().getItem(MENU_ITEM_REFRESH).setIcon(R.drawable.ic_menu_refresh);
        }

        @Override
        public void onAnimationRepeat(Animation animation) {
        }
    });

    ImageView imageView = new ImageView(this, null, android.R.style.Widget_Material_ActionButton);
    imageView.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.ic_menu_refresh));

    imageView.setPadding(31, imageView.getPaddingTop(), 32, imageView.getPaddingBottom());

    imageView.startAnimation(animation);
    item.setActionView(imageView);

}

From source file:kr.wdream.ui.IntroActivity.java

private void initView() {
    viewPager = (ViewPager) findViewById(kr.wdream.storyshop.R.id.intro_view_pager);
    TextView startMessagingButton = (TextView) findViewById(kr.wdream.storyshop.R.id.start_messaging_button);
    startMessagingButton.setText(LocaleController
            .getString("StartMessaging", kr.wdream.storyshop.R.string.StartMessaging).toUpperCase());
    if (Build.VERSION.SDK_INT >= 21) {
        StateListAnimator animator = new StateListAnimator();
        animator.addState(new int[] { android.R.attr.state_pressed }, ObjectAnimator
                .ofFloat(startMessagingButton, "translationZ", AndroidUtilities.dp(2), AndroidUtilities.dp(4))
                .setDuration(200));//from  w ww. j av  a 2 s .  com
        animator.addState(new int[] {}, ObjectAnimator
                .ofFloat(startMessagingButton, "translationZ", AndroidUtilities.dp(4), AndroidUtilities.dp(2))
                .setDuration(200));
        startMessagingButton.setStateListAnimator(animator);
    }
    topImage1 = (ImageView) findViewById(kr.wdream.storyshop.R.id.icon_image1);
    topImage2 = (ImageView) findViewById(kr.wdream.storyshop.R.id.icon_image2);
    bottomPages = (ViewGroup) findViewById(kr.wdream.storyshop.R.id.bottom_pages);
    topImage2.setVisibility(View.GONE);
    viewPager.setAdapter(new IntroAdapter());
    viewPager.setPageMargin(0);
    viewPager.setOffscreenPageLimit(1);
    viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageSelected(int i) {

        }

        @Override
        public void onPageScrollStateChanged(int i) {
            if (i == ViewPager.SCROLL_STATE_IDLE || i == ViewPager.SCROLL_STATE_SETTLING) {
                if (lastPage != viewPager.getCurrentItem()) {
                    lastPage = viewPager.getCurrentItem();

                    final ImageView fadeoutImage;
                    final ImageView fadeinImage;
                    if (topImage1.getVisibility() == View.VISIBLE) {
                        fadeoutImage = topImage1;
                        fadeinImage = topImage2;

                    } else {
                        fadeoutImage = topImage2;
                        fadeinImage = topImage1;
                    }

                    fadeinImage.bringToFront();
                    fadeinImage.setImageResource(icons[lastPage]);
                    fadeinImage.clearAnimation();
                    fadeoutImage.clearAnimation();

                    Animation outAnimation = AnimationUtils.loadAnimation(IntroActivity.this,
                            kr.wdream.storyshop.R.anim.icon_anim_fade_out);
                    outAnimation.setAnimationListener(new Animation.AnimationListener() {
                        @Override
                        public void onAnimationStart(Animation animation) {
                        }

                        @Override
                        public void onAnimationEnd(Animation animation) {
                            fadeoutImage.setVisibility(View.GONE);
                        }

                        @Override
                        public void onAnimationRepeat(Animation animation) {

                        }
                    });

                    Animation inAnimation = AnimationUtils.loadAnimation(IntroActivity.this,
                            kr.wdream.storyshop.R.anim.icon_anim_fade_in);
                    inAnimation.setAnimationListener(new Animation.AnimationListener() {
                        @Override
                        public void onAnimationStart(Animation animation) {
                            fadeinImage.setVisibility(View.VISIBLE);
                        }

                        @Override
                        public void onAnimationEnd(Animation animation) {
                        }

                        @Override
                        public void onAnimationRepeat(Animation animation) {

                        }
                    });

                    fadeoutImage.startAnimation(outAnimation);
                    fadeinImage.startAnimation(inAnimation);
                }
            }
        }
    });

    startMessagingButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            if (startPressed) {
                return;
            }
            startPressed = true;
            Intent intent2 = new Intent(IntroActivity.this, LaunchActivity.class);
            intent2.putExtra("fromIntro", true);
            Log.d(LOG_TAG, "startActivity(LaunchActivity), fromIntro : " + true);
            startActivity(intent2);
            finish();
        }
    });
    if (BuildVars.DEBUG_VERSION) {
        startMessagingButton.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {
                ConnectionsManager.getInstance().switchBackend();
                return true;
            }
        });
    }

    justCreated = true;
}

From source file:com.sim2dial.dialer.HistoryFragment.java

private void showDeleteAllButton() {
    if (deleteAll == null || deleteAll.getVisibility() == View.VISIBLE) {
        return;// w  w w. j a va 2s.c om
    }

    if (LinphoneActivity.instance().isAnimationDisabled()) {
        deleteAll.setVisibility(View.VISIBLE);
    } else {
        Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_in_left_to_right);
        animation.setAnimationListener(new AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {

            }

            @Override
            public void onAnimationRepeat(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {
                deleteAll.setVisibility(View.VISIBLE);
                animation.setAnimationListener(null);
            }
        });
        deleteAll.startAnimation(animation);
    }
}

From source file:com.sim2dial.dialer.HistoryFragment.java

private void hideDeleteAllButton() {
    if (deleteAll == null || deleteAll.getVisibility() != View.VISIBLE) {
        return;/*from  ww w.j a v a 2 s. c  o m*/
    }

    if (LinphoneActivity.instance().isAnimationDisabled()) {
        deleteAll.setVisibility(View.INVISIBLE);
    } else {
        Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_out_right_to_left);
        animation.setAnimationListener(new AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {

            }

            @Override
            public void onAnimationRepeat(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {
                deleteAll.setVisibility(View.INVISIBLE);
                animation.setAnimationListener(null);
            }
        });
        deleteAll.startAnimation(animation);
    }
}

From source file:com.skubit.comics.activities.ComicViewerActivity.java

@Override
public void toggleView() {
    if (mIsFullView) {
        toolbar.setVisibility(View.VISIBLE);
        toolbar.animate().translationY(0);

        mMainView.setBackgroundColor(getResources().getColor(android.R.color.background_light));
        mIsFullView = false;/*from   ww  w  . j a  va  2s. c o  m*/

        mSlider.setVisibility(View.VISIBLE);
        mSlider.animate().translationY(0);
        mSlider.setValue(mPager.getCurrentItem());

        final Animation anim = AnimationUtils.loadAnimation(this, R.anim.scale_in);
        anim.setFillEnabled(true);
        anim.setFillAfter(true);
        anim.setAnimationListener(new Animation.AnimationListener() {
            @Override
            public void onAnimationStart(Animation arg0) {
                mPager.setDrawingCacheEnabled(true);
            }

            @Override
            public void onAnimationRepeat(Animation arg0) {
            }

            @Override
            public void onAnimationEnd(Animation arg0) {
                mPager.setScaleX(.83f);
                mPager.setScaleY(.83f);
                mPager.clearAnimation();
            }
        });

        mPager.setAnimation(anim);
        mPager.startAnimation(anim);

    } else {
        toolbar.animate().translationY(-toolbar.getHeight());
        toolbar.setLayoutAnimationListener(new Animation.AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {
                toolbar.setVisibility(View.INVISIBLE);
            }

            @Override
            public void onAnimationRepeat(Animation animation) {

            }
        });

        mMainView.setBackgroundColor(getResources().getColor(android.R.color.background_dark));
        mIsFullView = true;

        mSlider.animate().translationY(mMainView.getHeight() + mSlider.getHeight());
        mSlider.setLayoutAnimationListener(new Animation.AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {
                mSlider.setVisibility(View.INVISIBLE);
            }

            @Override
            public void onAnimationRepeat(Animation animation) {

            }
        });

        final Animation anim = AnimationUtils.loadAnimation(this, R.anim.scale_out);
        anim.setAnimationListener(new Animation.AnimationListener() {
            @Override
            public void onAnimationStart(Animation arg0) {
                mPager.setScaleX(1f);
                mPager.setScaleY(1f);
            }

            @Override
            public void onAnimationRepeat(Animation arg0) {
            }

            @Override
            public void onAnimationEnd(Animation arg0) {
                mPager.clearAnimation();
            }
        });
        mPager.setAnimation(anim);
        mPager.startAnimation(anim);

    }
}

From source file:com.vaguehope.onosendai.widget.SidebarLayout.java

protected void animateSidebar(final boolean gotoOpen) {
    final View host = getHostView();
    if (host.getAnimation() != null)
        return;//from  w  ww .ja va2  s .  com

    final float deltaX;
    final Animation animation;
    if (gotoOpen) {
        deltaX = host.getTranslationX() > 0 ? -host.getTranslationX() : -this.sidebarWidth;
        animation = new TranslateAnimation(0, deltaX, 0, 0);
        animation.setAnimationListener(this.openListener);
    } else {
        deltaX = this.sidebarWidth - host.getTranslationX();
        animation = new TranslateAnimation(0, deltaX, 0, 0);
        animation.setAnimationListener(this.closeListener);
    }
    animation.setDuration((long) (SLIDE_DURATION * (Math.abs(deltaX) / this.sidebarWidth)));
    animation.setFillAfter(true);
    animation.setFillEnabled(true);
    host.startAnimation(animation);
}

From source file:org.catrobat.catroid.ui.fragment.AddBrickFragment.java

private void animateBrick(final Brick brick, PrototypeBrickAdapter adapter) {
    Context context = getActivity();
    Animation animation = AnimationUtils.loadAnimation(context, R.anim.blink);

    animation.setAnimationListener(new AnimationListener() {

        @Override/* w w w .j av a 2 s  .c o m*/
        public void onAnimationStart(Animation animation) {
            brick.setAnimationState(true);
        }

        @Override
        public void onAnimationRepeat(Animation animation) {
        }

        @Override
        public void onAnimationEnd(Animation animation) {
            brick.setAnimationState(false);
        }
    });

    View view = brick.getView(context, 0, adapter);

    view.startAnimation(animation);
}

From source file:org.mozilla.gecko.overlays.ui.ShareDialog.java

/**
 * Slide the overlay down off the screen and destroy it.
 *///from   ww w  .  ja v a  2s  .  co m
private void slideOut() {
    if (isAnimating) {
        return;
    }

    isAnimating = true;
    Animation anim = AnimationUtils.loadAnimation(this, R.anim.overlay_slide_down);
    findViewById(R.id.sharedialog).startAnimation(anim);

    anim.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {
            // Unused. I can haz Miranda method?
        }

        @Override
        public void onAnimationEnd(Animation animation) {
            // (bug 1132720) Hide the View so it doesn't flicker as the Activity closes.
            ShareDialog.this.setVisible(false);

            finish();
        }

        @Override
        public void onAnimationRepeat(Animation animation) {
            // Unused.
        }
    });
}

From source file:de.gebatzens.ggvertretungsplan.MainActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    setTheme(GGApp.GG_APP.provider.getTheme());
    super.onCreate(savedInstanceState);
    GGApp.GG_APP.activity = this;
    savedState = savedInstanceState;/*from  w  ww . j  ava 2 s. c  o  m*/

    Intent intent = getIntent();
    if (intent != null && intent.getStringExtra("fragment") != null) {
        GGApp.FragmentType type = GGApp.FragmentType.valueOf(intent.getStringExtra("fragment"));
        GGApp.GG_APP.setFragmentType(type);
    }

    mStrings = new String[] { getResources().getString(R.string.substitutionplan),
            getResources().getString(R.string.news), getResources().getString(R.string.cafeteria),
            getResources().getString(R.string.exams) };

    NotificationManager nm = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    nm.cancel(123);

    setContentView(getLayoutInflater().inflate(R.layout.activity_main, null));

    removeAllFragments();

    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    mContent = createFragment();
    transaction.replace(R.id.content_fragment, mContent, "gg_content_fragment");
    transaction.commit();

    if (GGApp.GG_APP.getDataForFragment(GGApp.GG_APP.getFragmentType()) == null)
        GGApp.GG_APP.refreshAsync(null, true, GGApp.GG_APP.getFragmentType());

    mToolbar = (Toolbar) findViewById(R.id.toolbar);

    mToolbar.setBackgroundColor(GGApp.GG_APP.provider.getColor());
    mToolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem menuItem) {

            if (menuItem.getItemId() == R.id.action_refresh) {
                ((SwipeRefreshLayout) mContent.getView().findViewById(R.id.refresh)).setRefreshing(true);
                GGApp.GG_APP.refreshAsync(new Runnable() {
                    @Override
                    public void run() {
                        ((SwipeRefreshLayout) mContent.getView().findViewById(R.id.refresh))
                                .setRefreshing(false);
                    }
                }, true, GGApp.GG_APP.getFragmentType());
            } else if (menuItem.getItemId() == R.id.action_settings) {
                Intent i = new Intent(MainActivity.this, SettingsActivity.class);
                startActivityForResult(i, 1);
            }

            return false;
        }
    });

    mToolbar.setTitle(GGApp.GG_APP.provider.getFullName());
    mToolbar.setSubtitle(
            mStrings[Arrays.asList(GGApp.FragmentType.values()).indexOf(GGApp.GG_APP.getFragmentType())]);
    mToolbar.inflateMenu(R.menu.toolbar_menu);
    mToolbar.setTitleTextColor(Color.WHITE);
    mToolbar.setSubtitleTextColor(Color.WHITE);

    ((TextView) findViewById(R.id.drawer_image_text)).setText(GGApp.GG_APP.provider.getFullName());

    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
    mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        GGApp.GG_APP.setStatusBarColorTransparent(getWindow());
        mDrawerLayout.setStatusBarBackgroundColor(GGApp.GG_APP.provider.getDarkColor());
    }

    mToggle = new ActionBarDrawerToggle(this, mDrawerLayout, mToolbar, R.string.drawer_open,
            R.string.drawer_close) {

        /** Called when a drawer has settled in a completely closed state. */
        public void onDrawerClosed(View view) {
            super.onDrawerClosed(view);
            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()
        }

        /** Called when a drawer has settled in a completely open state. */
        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
            invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu()
        }
    };

    mNacvigationImage = (ImageView) findViewById(R.id.navigation_schoolpicture);
    mNacvigationImage.setImageResource(GGApp.GG_APP.provider.getImage());
    mNavigationSchoolpictureLink = (View) findViewById(R.id.navigation_schoolpicture_link);
    mNavigationSchoolpictureLink.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View viewIn) {
            mDrawerLayout.closeDrawers();
            Intent linkIntent = new Intent(Intent.ACTION_VIEW);
            linkIntent.setData(Uri.parse(GGApp.GG_APP.provider.getWebsite()));
            startActivity(linkIntent);
        }
    });

    mDrawerLayout.setDrawerListener(mToggle);

    mDrawerList = (ListView) findViewById(R.id.left_drawer);
    //ArrayAdapter<String> aa = new ArrayAdapter<String>(this, R.layout.drawer_list_item, mStrings);
    NavigationListAdapter aa = new NavigationListAdapter(this, mStrings, mIcons);
    mDrawerList.setAdapter(aa);
    mDrawerList.setItemChecked(
            Arrays.asList(GGApp.FragmentType.values()).indexOf(GGApp.GG_APP.getFragmentType()), true);

    mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            if (GGApp.GG_APP.getFragmentType() != GGApp.FragmentType.values()[position]) {
                GGApp.GG_APP.setFragmentType(GGApp.FragmentType.values()[position]);
                mDrawerLayout.closeDrawers();
                mToolbar.setSubtitle(mStrings[position]);
                mContent = createFragment();
                Animation fadeOut = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.fade_out);
                fadeOut.setAnimationListener(new Animation.AnimationListener() {
                    @Override
                    public void onAnimationStart(Animation animation) {
                        // Called when the Animation starts
                    }

                    @Override
                    public void onAnimationEnd(Animation animation) {
                        FrameLayout contentFrame = (FrameLayout) findViewById(R.id.content_fragment);
                        contentFrame.setVisibility(View.INVISIBLE);
                        if (GGApp.GG_APP.getDataForFragment(GGApp.GG_APP.getFragmentType()) == null)
                            GGApp.GG_APP.refreshAsync(null, true, GGApp.GG_APP.getFragmentType());

                        removeAllFragments();

                        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
                        transaction.replace(R.id.content_fragment, mContent, "gg_content_fragment");
                        transaction.commit();
                    }

                    @Override
                    public void onAnimationRepeat(Animation animation) {
                        // This is called each time the Animation repeats
                    }
                });
                FrameLayout contentFrame = (FrameLayout) findViewById(R.id.content_fragment);
                contentFrame.startAnimation(fadeOut);
            } else {
                mDrawerLayout.closeDrawers();
            }
        }
    });
    ListviewHelper.getListViewSize(mDrawerList);

    /*mDrawerFirstUse = (TextView) findViewById(R.id.left_drawer_firstuse);
    mDrawerFirstUse.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View viewIn) {
        mDrawerLayout.closeDrawers();
        Intent i = new Intent(MainActivity.this, FirstUseActivity.class);
        startActivityForResult(i, 1);
    }
    });*/

    mDrawerSettings = (TextView) findViewById(R.id.left_drawer_settings);
    mDrawerSettings.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View viewIn) {
            mDrawerLayout.closeDrawers();
            Intent i = new Intent(MainActivity.this, SettingsActivity.class);
            startActivityForResult(i, 1);
        }
    });

    //wait for vps
    new AsyncTask<Object, Void, Void>() {

        @Override
        protected Void doInBackground(Object... params) {
            boolean b = true;
            while (b) {
                switch (GGApp.GG_APP.getFragmentType()) {
                case PLAN:
                    b = GGApp.GG_APP.plans == null;
                    break;
                case NEWS:
                    b = GGApp.GG_APP.news == null;
                    break;
                case MENSA:
                    b = GGApp.GG_APP.mensa == null;
                    break;
                case EXAMS:
                    b = GGApp.GG_APP.exams == null;
                    break;
                }
            }

            return null;
        }
    }.execute();

}