Android自定義彈窗提示效果

本文實例為大傢分享瞭Android 自定義彈窗提示的具體代碼,供大傢參考,具體內容如下

Java文件:

private void showSetDeBugDialog() {
        AlertDialog.Builder setDeBugDialog = new AlertDialog.Builder(this);
        //獲取界面
        View dialogView = LayoutInflater.from(this).inflate(R.layout.system_admin_psw_alert_dialog, null);
        //將界面填充到AlertDiaLog容器並去除邊框
        setDeBugDialog.setView(dialogView,0,0,0,0);
        //初始化控件
        TextView but_cancel = dialogView.findViewById(R.id.but_cancel);
        TextView but_confirm = dialogView.findViewById(R.id.but_confirm);
        //取消點擊外部消失彈窗
        setDeBugDialog.setCancelable(false);
        //創建AlertDiaLog
        setDeBugDialog.create();
        //AlertDiaLog顯示
        final AlertDialog customAlert = setDeBugDialog.show();
        //設置AlertDiaLog寬高屬性
//        WindowManager.LayoutParams params = Objects.requireNonNull(customAlert.getWindow()).getAttributes();
//        params.width = 200;
//        params.height = 200 ;
//        customAlert.getWindow().setAttributes(params);
        // 移除dialog的decorview背景色
        Objects.requireNonNull(customAlert.getWindow()).getDecorView().setBackground(null);
        //設置自定義界面的點擊事件邏輯
        but_cancel.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                customAlert.dismiss();
            }
        });
        but_confirm.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                customAlert.dismiss();
            }
        });
    }

佈局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@drawable/fillet_fill_stroke">

    <ImageView
        android:layout_width= "38dp"
        android:layout_height="38dp"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:src="@mipmap/wenti"/>

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:paddingTop="20dp"
        android:paddingBottom="20dp"
        android:textColor="#5C5C5C"
        android:textSize="20sp"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:text="確定要退出嗎?"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="#eee"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/but_cancel"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:textColor="#999"
            android:paddingTop="15dp"
            android:paddingBottom="15dp"
            android:text="取消"/>

        <LinearLayout
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#eee"/>

        <TextView
            android:id="@+id/but_confirm"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:paddingTop="15dp"
            android:paddingBottom="15dp"
            android:textColor="#5C5C5C"
            android:textStyle="bold"
            android:text="確定"/>

    </LinearLayout>

</LinearLayout>

資源文件:

背景樣式

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">

    <!--描邊設置-->
    <stroke android:color="@android:color/darker_gray"
        android:width="1px" />

    <!--填充設置-->
    <solid android:color="@android:color/white"/>

    <!--圓角設置-->
    <corners android:radius="15dp"/>

</shape>

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: