• Android-----自定义AlertDialog弹框


    需要使用弹框来实现加载效果,用的是别人的加载框架:

    repositories {
            google()
            jcenter()
            maven { url 'https://jitpack.io' } 
        }
    
    
    
    compile 'com.github.zzz40500:android-shapeLoadingView:1.0.3.2'  //内容加载展示(图形)

    自定义AlertDialog弹框布局:

    <?xml version="1.0" encoding="utf-8"?>
    <!--    数据加载中提示布局    -->
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="center"
        android:background="@drawable/dialog_background_dark"
        tools:context="com.org.huanjianmvp.Activity.ListDatas">
    
        <com.mingle.widget.LoadingView
            android:id="@+id/loadView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
    
    </LinearLayout>

    写一个静态方法来返回自定义好的弹框:

    /**【加载框展示】**/
        public static AlertDialog AlertLoading(Context context){
            AlertDialog.Builder builder = new AlertDialog.Builder(context);
            AlertDialog dialog = builder.create();
            View dialogView = View.inflate(context, R.layout.loading,null);   //自定义弹框视图
            LoadingView loadingView = dialogView.findViewById(R.id.loadView);
            loadingView.setLoadingText("数据加载中. . .");
            dialog.setView(dialogView);
            dialog.getWindow().setDimAmount(0f);    //去掉遮罩层
            Window window = dialog.getWindow();
            WindowManager.LayoutParams layout = window.getAttributes();
            layout.alpha = 0.5f;
            window.setAttributes(layout);       //弹窗透明度设置
            dialog.setCancelable(false);        //点击弹框无法取消
            return dialog;
        }

    使用:

    AlertDialog dialog= AlertDialogUtils.AlertLoading(Login.this);
    
    dialog.show();    //展示
    
    dialog.dismiss();//关闭

    效果:

  • 相关阅读:
    miniui mini-combobox的使用
    xsd文件记录
    Hibernate 一次查询分多次返回 避免内存溢出
    卡口扩展信息
    删除 maven仓库,更新失败的jar包命令
    杀windows进程
    layer 遮罩层等待
    math() 对象
    JavaScript 字符串方法
    JavaScript 数组遍历方法;
  • 原文地址:https://www.cnblogs.com/xiobai/p/13750028.html
Copyright © 2020-2023  润新知