День добрый!
Попробуйте так:
buttonsBar.setVisibility(View.VISIBLE);
buttonsBar.startAnimation(this,AnimationUtils.loadAnimation(R.anim.bottom_in));
setAnimation - устанавливает анимацию для данного View. Лучше используйте для запуска анимации метод .startAnimation(Context context,Animation anim);
Если вам надо запустить бесконечную анимацию, а затем ее остановить, например для анимации загрузки, то:
if(needAnimate)
view.startAnimation(context,AnimationUtils.loadAnimation(R.anim.download_animation));
else
view.clearAnimation();
На будущее:
<rotate
android:fillAfter="true"
android:fromDegrees="0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:pivotX="0.5"
android:pivotY="0.5"
android:toDegrees="180" />
100%p - означает, что анимация будет осуществляться относительно родителя, то есть ViewParent. Если хотите анимировать относительно данного View, то пишите 100%.
fillAfter - позволит по завершению анимации оставить View в конечном положении. В примере - поворот на 180 градусов.
interpolator - математическая функция, которая разбивает вашу анимацию на интервалы. На этих интервалах ваша анимация проходит с разной скоростью. decelerate_interpolator позволит вашему бару выезжать на экран более естественно, замедляя ход.
Пакет @android:anim - предоставляет базовый набор интерполяторов. Если не ошибаюсь, то по умолчанию к анимации применяется acelerete_decelerate интерполирование.