博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
仿招商银行载入loading效果
阅读量:6394 次
发布时间:2019-06-23

本文共 2917 字,大约阅读时间需要 9 分钟。

在招商银行android手机app中。有例如以下图所看到的的loading载入效果:

实现这个效果还是比較简单,就是自己定义dialog,设置自己想要的布局。然后设置旋转动画。

主要步骤:

1,写布局文件

2,设置dialog的主题

3,自己定义dialog继承 自Dialog

4,设置旋转动画

5。使用

第一步:编写dialog_merchantbank.xml

> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10dp" android:layout_centerInParent="true"> <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal"> <ImageView android:id="@+id/iv_loading_bg" android:layout_width="40dp" android:layout_height="40dp" android:layout_centerInParent="true" android:src="@drawable/loading_bg" /> <ImageView android:id="@+id/iv_loading_roll" android:layout_width="40dp" android:layout_height="40dp" android:layout_centerInParent="true" android:src="@drawable/loading_roll" /> </RelativeLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:text="登录中,请稍后..."/> </LinearLayout> </RelativeLayout>

第二步:编写主题样式

第三步:自己定义MerchantBankDialog继承自Dialog

/** * 仿招商银行loading dialog */public class MerchantBankDialog extends Dialog{    private Context mContext;    private static MerchantBankDialog dialog;    public MerchantBankDialog(Context context) {        super(context);        mContext = context;    }    public MerchantBankDialog(Context context, int themeResId) {        super(context, themeResId);        mContext = context;    }    public static MerchantBankDialog createDialog(Context context){        //1设置样式        dialog = new MerchantBankDialog(context,R.style.common_dialog);        //2设置布局        dialog.setContentView(R.layout.dialog_merchantbank);        dialog.getWindow().getAttributes().gravity = Gravity.CENTER;        dialog.setCanceledOnTouchOutside(false);        //dialog.setCancelable(false);// 不能够用“返回键”取消        return dialog;    }    @Override    public void onWindowFocusChanged(boolean hasFocus) {        super.onWindowFocusChanged(hasFocus);        if(hasFocus && dialog !=null){            //3载入旋转动画            ImageView iv_loading_roll = (ImageView) dialog.findViewById(R.id.iv_loading_roll);            Animation loadingAnim = AnimationUtils.loadAnimation(                    mContext, R.anim.rotate_loading);            iv_loading_roll.startAnimation(loadingAnim);        }    }}

第四步:编写旋转动画xml文件,rotate_loading.xml

第五步:点击显示loading提示框

	btn_openzhaohangloading.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View view) {                MerchantBankDialog dialog = MerchantBankDialog.createDialog(MainActivity.this);                dialog.show();            }        });
至此。基本功能已实现。如有疑问欢迎留言或加群讨论:
196615382
,如需源代码,

。。

你可能感兴趣的文章
Sublime-text gitHub 问题收集
查看>>
UML 类图
查看>>
Unity Remote 无法连接
查看>>
linux下core file size设置笔记
查看>>
mysql 、redis的区别
查看>>
使用JPA中@Query 注解实现update 操作
查看>>
7.4. APC Cache (php-apc - APC (Alternative PHP Cache) module for PHP 5)
查看>>
Web 仪表盘
查看>>
我的Fedora 7硬盘安装过程
查看>>
18.4. FAQ
查看>>
Python——SSHClient.py
查看>>
MVC解决更新冲突问题
查看>>
江西理工大学南昌校区cool code竞赛
查看>>
[LeetCode] Trim a Binary Search Tree 修剪一棵二叉搜索树
查看>>
Ubuntu SDL lib 安装
查看>>
Java 并发编程内部分享PPT分享
查看>>
关于discuz中禾金投票系统循环出现引导页的问题
查看>>
C#开源系统大汇总
查看>>
Linux服务器安全初始化自选安装Shell脚本
查看>>
PyCharm教程
查看>>