首页 > 代码库 > Android点赞动画效果 ,点赞后加一,2种方法,①补间动画②位移动画
Android点赞动画效果 ,点赞后加一,2种方法,①补间动画②位移动画
第一个动画文件btn_anim.xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/decelerate_interpolator"> <!--位移动画 --> <translate android:fromXDelta="0.0" android:fromYDelta="0.0" android:toXDelta="0.0" android:toYDelta="-75.0" android:duration="750" android:fillBefore="true" android:fillAfter="true" />
<scale android:fromXScale="1.0" android:fromYScale="1.0" android:toXScale="1.05" android:toYScale="1.0" android:pivotX="50%" android:pivotY="50%" android:duration="350" android:fillBefore="true" android:fillAfter="true"/></set><!--缩放动画 -->
2-在res文件夹 anim文件夹下面,建立第二个文件layout_anim.xml):
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator">
<scale
android:fromXScale="1.0"
android:fromYScale="1.0"
android:toXScale="0.95"
android:toYScale="0.95"
android:pivotX="50%"
android:pivotY="50%"
android:duration="100"
android:fillBefore="true"
android:fillAfter="true"/>
</set>
3主activity 我是在fragment中使用,你就随意吧。
...
private ScrollView scrollView; // This is my container. Yours may be different
private Animation btnAnim;
private Animation layoutAnim;
...
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// Getting context
context = getActivity().getApplicationContext();
btnAnim = AnimationUtils.loadAnimation(context, R.anim.btn_anim);
btnAnim.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
layoutAnim = AnimationUtils.loadAnimation(context, R.anim.layout_anim);
scrollView.startAnimation(layoutAnim);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
// create view
View view = inflater.inflate(R.layout.fragment_browse_single, container, false);
scrollView = (ScrollView) view.findViewById(R.id.scrollView);
myButton = (Button) view.findViewById(R.id.myButton);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
btnZan.startAnimation(btnAnim);
}
});
Log.i(TAG, "View created");
return view;
}
另一种demo做法。试用了线程。不推荐使用
public
class
applaudAnimation
extends
Activity
implements
OnClickListener {
private
Button button;
private
TextView textView;
private
android.view.animation.Animation animation;
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.animation);
animation = AnimationUtils.loadAnimation(
this
,R.anim.applaud_animation);
button = (Button) findViewById(R.id.bt);
button.setOnClickListener(
this
);
textView = (TextView) findViewById(R.id.animation);
}
@Override
public
void
onClick(View v) {
if
(v == button) {
textView.setVisibility(View.VISIBLE);
textView.startAnimation(animation);
new
Handler().postDelayed(
new
Runnable() {
public
void
run() {
textView.setVisibility(View.GONE);
}
},
1000
);
}
}
}
animation.xml
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<RelativeLayout xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"fill_parent"
android:layout_height=
"fill_parent"
android:background=
"#ffffff"
>
<Button
android:id=
"@+id/bt"
android:layout_width=
"40dip"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:gravity=
"center"
android:text=
"赞"
android:textColor=
"#000000"
android:textSize=
"18dip"
/>
<TextView
android:id=
"@+id/animation"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:gravity=
"center"
android:text=
"+1"
android:textColor=
"#FF0000"
android:textSize=
"18dip"
android:visibility=
"gone"
/>
</RelativeLayout>
applaud_animation.xml
<?xml version=
"1.0"
encoding=
"utf-8"
?>
<set xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<translate
android:fromXDelta=
"0"
android:toXDelta=
"0"
android:fromYDelta=
"0"
android:toYDelta=
"-50"
android:duration=
"1000"
/>
<alpha
android:fromAlpha=
"1.0"
android:toAlpha=
"0.3"
android:duration=
"1000"
/>
</set>
Android点赞动画效果 ,点赞后加一,2种方法,①补间动画②位移动画
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。