android Loading动画效果

    xiaoxiao2021-08-21  104

    Android  Loading动画效果

    现在项目不是很忙,所以想不能闲着,研究一下大神们是如何实现等待框中的动画显示的,之前看着效果那么帅,那么酷。比猫画虎的写了写代码。

    首先在res文件夹下新建一个anim文件

    <?xml version="1.0" encoding="utf-8"?>   <animation-list       android:oneshot="false"     xmlns:android="http://schemas.android.com/apk/res/android">        <item android:drawable="@drawable/app_loading0" android:duration="150"/>       <item android:drawable="@drawable/app_loading1" android:duration="150"/>   </animation-list>

    再建一个layout

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"       android:id="@+id/dialog_view"        android:orientation="vertical"       android:layout_width="fill_parent"        android:layout_height="fill_parent"       android:minHeight="60dp"       android:minWidth="180dp"       android:gravity="center"       android:padding="10dp"       android:background="@drawable/loading_bg">       <ImageView            android:id="@+id/img"           android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:src="@anim/dialog_animation"/>       <TextView            android:id="@+id/tv_load"           android:layout_width="wrap_content"            android:layout_height="wrap_content"           android:layout_marginLeft="10dp"           android:text="数据加载中……" />   </LinearLayout>

    接下来开始写一个自定义的dialog

    package com.main.view; import com.example.loadingresults.R; import android.app.ProgressDialog; import android.content.Context; import android.graphics.drawable.AnimationDrawable; import android.os.Bundle; import android.widget.ImageView; import android.widget.TextView; public class LoadingView extends ProgressDialog{     private AnimationDrawable aDrawable;     private Context context;     private String content;     private ImageView img;     private TextView tv_load;     public LoadingView(Context context,String content) {         super(context);         // TODO Auto-generated constructor stub         this.context = context;         this.content = content;         setCanceledOnTouchOutside(true);     }     @Override     protected void onCreate(Bundle savedInstanceState) {         // TODO Auto-generated method stub         super.onCreate(savedInstanceState);         setContentView(R.layout.viewlayout);         img = (ImageView) findViewById(R.id.img);         tv_load = (TextView) findViewById(R.id.tv_load);         aDrawable = (AnimationDrawable) img.getDrawable();         img.post(new Runnable() {                          @Override             public void run() {                 // TODO Auto-generated method stub                 aDrawable.start();                 tv_load.setText(content);             }         });     } }

    转载请注明原文地址: https://ju.6miu.com/read-676780.html

    最新回复(0)