Android自定义对话框

本文介绍了一个自定义登录对话框工具类的实现过程,包括使用Android提供的Dialog组件及自定义样式来创建无标题的登录界面,并通过点击事件触发密码验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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>
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值