Android自定义加载控件实现数据加载动画
来源:爱站网时间:2019-08-21编辑:网友分享
安卓系统自己的加载动画太简单了,长时间后会造成视觉疲劳,所以有时候需要定义一些有趣的动画,也因为我们通常专注于业务和性能处理,接下来爱站技术频道小编为大家带来Android自定义加载控件实现数据加载动画,一起来看看吧!
安卓系统自己的加载动画太简单了,长时间后会造成视觉疲劳,所以有时候需要定义一些有趣的动画,也因为我们通常专注于业务和性能处理,接下来爱站技术频道小编为大家带来Android自定义加载控件实现数据加载动画,一起来看看吧!
package com.*****.*****.widget; import android.content.Context; import android.graphics.drawable.AnimationDrawable; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; import android.widget.RelativeLayout; import android.widget.TextView; /** * Created by Xiaomu * 数据加载控件 */ public class LoadingView extends RelativeLayout { private Context mContext; private ImageView loadingIv; private TextView loadingTv; public LoadingView(Context context) { super(context); this.mContext = context; initView(); } public LoadingView(Context context, AttributeSet attrs) { super(context, attrs); this.mContext = context; initView(); } private void initView() { View view = LayoutInflater.from(mContext).inflate(R.layout.loading, null); loadingIv = (ImageView) view.findViewById(R.id.loadingIv); loadingTv = (TextView) view.findViewById(R.id.loadingTv); AnimationDrawable animationDrawable = (AnimationDrawable) loadingIv.getBackground(); if (animationDrawable != null) animationDrawable.start(); addView(view); } public ImageView getLoadingIv() { return loadingIv; } public TextView getLoadingTv() { return loadingTv; } }
2. xml布局文件
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content"> <ImageView android:id="@+id/loadingIv" android:layout_width="@dimen/dimen_144_dip" android:layout_height="@dimen/dimen_162_dip" android:layout_centerHorizontal="true" android:background="@anim/loading_anim" /> <TextView android:id="@+id/loadingTv" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignBottom="@+id/loadingIv" android:layout_centerHorizontal="true" android:gravity="center_horizontal" android:text="正在加载中..." android:textSize="15sp" /> </RelativeLayout>
3. loading_anim加载动画的xml
<?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> <item android:drawable="@drawable/progress_loading_image_01" android:duration="150" /> <item android:drawable="@drawable/progress_loading_image_02" android:duration="150" /> </animation-list>
看了上面的介绍,相信大家对于Android自定义加载控件实现数据加载动画,已经有了自己的认识,爱站技术频道为大家提供更多知识,希望帮到您。