Android 提交或者上传数据时的dialog弹框动画效果
程序员文章站
2022-10-29 16:39:44
效果图如下所示:
类似这种弹框里含有动画,一般我们在上传数据或者支付的时候会用到,当然,假如我们换几张图片,还可以把它当做是加载数据的时候使用,总之这是一个dialo...
效果图如下所示:
类似这种弹框里含有动画,一般我们在上传数据或者支付的时候会用到,当然,假如我们换几张图片,还可以把它当做是加载数据的时候使用,总之这是一个dialog弹框,只不过这个弹框在弹出后,上面有动画的运行。
上代码
首先是布局文件 :
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="200dp" android:layout_width="200dp" android:layout_centerinparent="true" android:background="@drawable/bg_custom_toast"> <linearlayout android:layout_height="150dp" android:layout_width="150sp" android:orientation="vertical" android:gravity="center" android:layout_centerinparent="true"> <imageview android:layout_width="60dp" android:layout_height="60dp" android:layout_gravity="center_horizontal" android:src="@mipmap/weixin_loading"/> <textview android:id="@+id/text_loading" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="center_horizontal" android:layout_margintop="5dp" android:text="微信支付"/> <imageview android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/frame2" android:layout_gravity="center_horizontal"/> </linearlayout> </relativelayout>
其中 drawable/bg_custom_toast 是一个背景色
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#90000000" /> <corners android:radius="8dip" /> </shape>
frame2 是一个承载图片的载体,在布局文件里引用
<?xml version="1.0" encoding="utf-8"?> <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false" > <item android:drawable="@mipmap/appload1" android:duration="150"/> <item android:drawable="@mipmap/appload2" android:duration="150"/> <item android:drawable="@mipmap/appload3" android:duration="150"/> <item android:drawable="@mipmap/appload4" android:duration="150"/> <item android:drawable="@mipmap/appload5" android:duration="150"/> <item android:drawable="@mipmap/appload6" android:duration="150"/> <item android:drawable="@mipmap/appload7" android:duration="150"/> <item android:drawable="@mipmap/appload8" android:duration="150"/> </animation-list>
然后是 dialog
package com.example.administrator.loadxin; import android.app.dialog; import android.content.context; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup; import android.view.windowmanager; /** * created by administrator on 2017/6/21 0021. */ public class weixindialog { string message=null; private dialog dialog; private context context; public weixindialog(context context) { this.context = context; } public void show(){ dialog = new dialog(context, r.style.mydialogstyle); view view = layoutinflater.from(context).inflate(r.layout.weixin_dialog,null,false); dialog.setcontentview(view); dialog.show(); windowmanager.layoutparams lp = dialog.getwindow() .getattributes(); lp.width = viewgroup.layoutparams.wrap_content; lp.height = viewgroup.layoutparams.wrap_content; dialog.getwindow().setattributes(lp); } public void dismiss(){ if(dialog != null){ dialog.dismiss(); } } }
最后是在mainactivity里引用这个dialog
package com.example.administrator.loadxin; import android.support.v7.app.appcompatactivity; import android.os.bundle; import android.view.view; import android.widget.button; public class mainactivity extends appcompatactivity { @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); button btn= (button) findviewbyid(r.id.button); btn.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { final weixindialog dialog1 = new weixindialog(mainactivity.this); dialog1.show(); } }); } }
以上所述是小编给大家介绍的android 提交或者上传数据时的弹框动画效果,希望对大家有所帮助