button_enter_animation.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="800"
android:fromXDelta="-200%p"
android:fromYDelta="0"
android:toXDelta="0%p"
android:toYDelta="0" />
<alpha
android:duration="800"
android:fromAlpha="0.1"
android:toAlpha="1.0" />
</set>
button_exit_animation.xml:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<translate
android:duration="800"
android:fromXDelta="0%p"
android:fromYDelta="0"
android:toXDelta="-200%p"
android:toYDelta="0" />
<alpha
android:duration="800"
android:fromAlpha="1.0"
android:toAlpha="0.1" />
</set>
btn_anim.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Animation anienter = AnimationUtils.loadAnimation(
getApplicationContext(), R.anim.button_enter_animation);
Animation aniexit = AnimationUtils.loadAnimation(
getApplicationContext(), R.anim.button_exit_animation);
// 组件播放动画
if (isopen) {
anim_layout.setVisibility(4);
anim_layout.startAnimation(aniexit);
isopen=false;
}else {
anim_layout.setVisibility(0);
anim_layout.startAnimation(anienter);
isopen=true;
}
}
});
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="horizontal" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="36dp"
android:gravity="left"
android:orientation="horizontal" >
<Button
android:id="@+id/btn_anim"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginBottom="0dp"
android:background="@drawable/btn_anim" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="right"
android:orientation="horizontal" >
<RelativeLayout
android:id="@+id/anim_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="0dp"
android:visibility="gone" >
<Button
android:id="@+id/main_job_btn_good"
android:layout_width="64dp"
android:layout_height="36dp"
android:background="@drawable/good_button_style"
android:gravity="right"
android:paddingRight="3dp"
android:paddingTop="10dp"
android:text=""
android:textColor="#EF9A31" />
<Button
android:id="@+id/main_job_btn_complaint"
android:layout_width="64dp"
android:layout_height="36dp"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@id/main_job_btn_good"
android:background="@drawable/complait_button_style"
android:text=" " />
<Button
android:id="@+id/main_job_btn_comment"
android:layout_width="64dp"
android:layout_height="36dp"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@id/main_job_btn_complaint"
android:background="@drawable/comment_button_style"
android:text="" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>