本文实例为大家分享了Android自定义加载控件,第一次小人跑动的加载效果眼前一亮,相比传统的PrograssBar高大上不止一点,于是走起,自定义了控件LoadingView去实现动态效果,可直接在xml中使用,具体实现如下

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"> <ImageViewandroid: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" /> <TextViewandroid: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-listxmlns:android="http://schemas.android.com/apk/res/android"android:oneshot="false"><itemandroid:drawable="@drawable/progress_loading_image_01"android:duration="150" /><itemandroid:drawable="@drawable/progress_loading_image_02"android:duration="150" /></animation-list>
以上就是本文的全部内容,希望对大家学习使用Android自定义加载控件有所启发。