本帖最后由 liu 于 2018-12-28 15:49 编辑
AlphaAniamtion透明度动画
两种实现方式:
一、xml+java代码:
在res下新建anim文件夹,在res/anim下新建alpha.xml:
[XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:duration="5000"
android:fromAlpha="0.1"
android:toAlpha="1.0" />
</set>
fromAlpha 动画起始时透明度,值取0.0-1.0之间的float数据类型的数字,0.0表示完全透明1.0表示完全不透明
toAlpha 动画结束时透明度,值取0.0-1.0之间的float数据类型的数字,0.0表示完全透明1.0表示完全不透明
duration 动画持续时间
activity_main.xml:
[XML] 纯文本查看 复制代码 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center">
<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="alpha"/>
</LinearLayout> java代码:[Java] 纯文本查看 复制代码 public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button button = (Button) findViewById(R.id.btn);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.alpha);
v.startAnimation(animation);
}
});
}
}
效果图:
二、java代码实现[Java] 纯文本查看 复制代码 public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final Button button = (Button) findViewById(R.id.btn);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlphaAnimation alphaAnimation = new AlphaAnimation(1.0f, 0.1f);
alphaAnimation.setRepeatCount(-1);
alphaAnimation.setDuration(1000);
v.startAnimation(alphaAnimation);
}
});
}
}
效果图:
|