安卓的Android loading...加载动画

1.第一步实现动画的内容的xml文件:页面很简单。


```java
<?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="100dp"
    android:background="?attr/colorControlHighlight"
    android:orientation="horizontal">

    <ImageView
        android:id="@+id/imagelong"
        android:layout_width="60dp"
        android:layout_height="60dp"
        android:src="@mipmap/shezhi" />

    <TextView
        android:id="@+id/tvlong"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="正在加载中" />
</LinearLayout>

2.用写对应的java代码

```java

```java

public class Loading extends Dialog {
    private ImageView imageView;
    private Button button;
    private Handler handler;
    private Runnable runnable;
    /**
     *
     */
    public Loading(@NonNull Context context) {
        super(context);
        setContentView(R.layout.londing);
        /*
            设置旋转动画
         */
        Animation circle_anim = AnimationUtils.loadAnimation(context, R.anim.anim_round_rotate);
        LinearInterpolator interpolator = new LinearInterpolator();  //设置匀速旋转,在xml文件中设置会出现卡顿
        circle_anim.setInterpolator(interpolator);
        imageView=findViewById(R.id.imagelong);
        imageView.startAnimation(circle_anim);

        //这里Handler的postDelayed方法,等待10000毫秒在执行run方法。
        //在Activity中我们经常需要使用Handler方法更新UI或者执行一些耗时事件,
        //并且Handler中post方法既可以执行耗时事件也可以做一些UI更新的事情,比较好用,推荐使用
        handler=new Handler();
        runnable=new Runnable(){
            public void run(){
                //等待10000毫秒后销毁此页面,并提示
                Loading.this.hide();
                Toast.makeText(getContext(), "哈哈哈", Toast.LENGTH_LONG).show();
            }
        };
        handler.postDelayed(runnable,10000);
    }
}

3.写照片旋转的对应xml文件/res/anim/anim_round_rotate.xml

```java
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate
        android:fromDegrees="0"
        android:toDegrees="359"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="1000"
        android:repeatCount="-1" />
    <!--设置不断旋转-->
    <!--toDegrees0~359防止卡顿-->
    <!--pivotX设置旋转中心点为控件中心-->
</set>

4.在想用的 地方调用


```java
new Loading(this).show();

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值