欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android自定义对话框

程序员文章站 2022-05-16 17:22:40
...

这时我封装的一个对话框工具类

package com.icare.midea.dialog;

import com.icare.midea.R;
import com.icare.midea.app.AppSession;
import com.icare.midea.bll.UserBll;
import com.icare.midea.util.Encryption;

import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.Handler;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class LoginDialog {
	private static Toast myToast;
	public static Dialog getDialog(final Context context,
			final Handler myHandler,final ProgressDialog progressDialog) {
		myToast = Toast.makeText(context, "",
				Toast.LENGTH_SHORT);
		// 弹出云服务输入窗口
		Dialog dialog = new Dialog(context, R.style.dialog);
		dialog.setContentView(R.layout.setcloudpasword);
		Button btLogin = (Button) dialog.findViewById(R.id.bt_OK);
		final EditText et_cloudPass = (EditText) dialog
				.findViewById(R.id.et_cloudpasswd);
		btLogin.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v) {
				if (et_cloudPass.getText().toString().trim().length() == 0) {
					myToast.cancel();
					myToast.setText("云服务密码不能为空!");
					myToast.show();
					return;
				} else {
					progressDialog.show();
					Encryption encryption = new Encryption();// 创建加密工具类,对象
					AppSession.cloudpassword = encryption.getDoubleMd5(
							et_cloudPass.getText().toString().trim(), "midea");// 对密码进行md5加密
					//UserBll.Blind(myHandler);// 进行,新用户绑定
					UserBll.Login(myHandler);// 进行,新用户绑定
				}
			}
		});
		return dialog;
	}
}

 只要看主要的几行代码就ok了,其他的可以忽略不计,当然我的对话框识没有标题的,所以需要自定义一个风格

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="dialog" parent="@android:style/Theme.Dialog">

        <!-- name是我们在使用时要用到的资源的标志,parent是指当前的样式所继承的父类样式 -->
        <item name="android:windowFrame">@null</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowNoTitle">true</item> <!-- 隐藏标题栏 -->
        <item name="android:background">#00000000</item>
        <item name="android:backgroundDimEnabled">false</item>
    </style>
</resources>