炫酷的loading框

本人一直想做个好看的loading框,技术不够,后来看到一个开源控件不错,就用这个控件然后加上自己的想法改成了一个dialog,觉得还不错,分享出来。没有废话,直接开干。

开源库地址:https://github.com/ybq/Android-SpinKit?utm_source=tuicool&utm_medium=referral

项目的build.gradle中:

allprojects {
	repositories {
		...
		maven { url "https://jitpack.io" }
	}
}

 工程项目中的build.gradle中:

    compile 'com.github.ybq:Android-SpinKit:1.1.0'

XML:

<com.github.ybq.android.spinkit.SpinKitView
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/spin_kit"
    style="@style/SpinKitView.Large.Circle"   <!--设置哪种样式-->
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    app:SpinKit_Color="@color/colorAccent" /> <!--为动画颜色可自由设置--> 

Java代码:

        //各种样式示例(更多样式见原开源库地址)
        ChasingDots chasingDots = new ChasingDots();
        DoubleBounce doubleBounce = new DoubleBounce();
        FoldingCube foldingCube = new FoldingCube();
        WanderingCubes wanderingCubes = new WanderingCubes();

        View inflate = LayoutInflater.from(getApplicationContext()).inflate(R.layout.test, null);
        SpinKitView viewById = (SpinKitView) inflate.findViewById(R.id.spin_kit);
        viewById.setIndeterminateDrawable(foldingCube);
        builder = new AlertDialog.Builder(MainActivity.this);
        //自定义dialog的布局样式
        builder.setCustomTitle(inflate);
        alertDialog = builder.create();
        alertDialog.setCancelable(true);
        //设置dialog框背景透明
        Window window = alertDialog.getWindow();
        WindowManager.LayoutParams lp = window.getAttributes();
        lp.alpha = 0.7f;
        window.setAttributes(lp);
        
        alertDialog.setCanceledOnTouchOutside(true);

        alertDialog.show();

效果图(这里只贴了原来的样例图,dialog的效果图差不多,就不贴了):

转载于:https://my.oschina.net/heyongrui/blog/864824

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值