Android 登陆对话框
2015-03-18 21:35
190 查看
public class LoginActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); showWaiterAuthorizationDialog(); } // 显示对话框 public void showWaiterAuthorizationDialog() { // LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化 LayoutInflater factory = LayoutInflater.from(LoginActivity.this); // 把activity_login中的控件定义在View中 final View textEntryView = factory.inflate(R.layout.activity_login, null); // 将LoginActivity中的控件显示在对话框中 new AlertDialog.Builder(LoginActivity.this) // 对话框的标题 .setTitle("登陆") // 设定显示的View .setView(textEntryView) // 对话框中的“登陆”按钮的点击事件 .setPositiveButton("登陆", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { // 获取用户输入的“用户名”,“密码” // 注意:textEntryView.findViewById很重要,因为上面factory.inflate(R.layout.activity_login, // null)将页面布局赋值给了textEntryView了 final EditText etUserName = (EditText) textEntryView .findViewById(R.id.etuserName); final EditText etPassword = (EditText) textEntryView .findViewById(R.id.etPWD); // 将页面输入框中获得的“用户名”,“密码”转为字符串 String userName = etUserName.getText().toString() .trim(); String password = etPassword.getText().toString() .trim(); // 现在为止已经获得了字符型的用户名和密码了,接下来就是根据自己的需求来编写代码了 // 这里做一个简单的测试,假定输入的用户名和密码都是1则进入其他操作页面(OperationActivity) if (userName.equals("1") && password.equals("1")) { // 跳转到OperationActivity Intent intent = new Intent(); intent.setClass(LoginActivity.this, OperationActivity.class); startActivity(intent); // 关闭当前页面 LoginActivity.this.finish(); } else { Toast.makeText(LoginActivity.this, "密码或用户名错误", Toast.LENGTH_SHORT).show(); try { // 注意此处是通过反射,修改源代码类中的字段mShowing为true,系统会认为对话框打开 // 从而调用dismiss() Field field = dialog.getClass().getSuperclass() .getDeclaredField("mShowing"); field.setAccessible(true); field.set(dialog, false); dialog.dismiss(); } catch (Exception e) { } } } }) // 对话框的“退出”单击事件 .setNegativeButton("退出", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int whichButton) { LoginActivity.this.finish(); } }) // 设置dialog是否为模态,false表示模态,true表示非模态 .setCancelable(false) // 对话框的创建、显示 .create().show(); } }
来源 : http://blog.csdn.net/aboy123/article/details/8548930
相关文章推荐
- Android简单的自定义用户登陆对话框
- (Android实战系统一)对话框实现登陆注册功能
- Android自定义登陆窗口-对话框
- Android:创建常见对话框以及使用对话框实现登陆
- 系出名门Android(3) - 对话框(Dialog)和通知(Notification)
- Android基础 - 对话框和浮动Activity
- android 对话框深入研究
- Android开发指南-用户界面-对话框
- Android应用程序开发教程 - 实现一个登录对话框
- 解决asp.net不允许匿名登陆,但不显示登陆对话框的问题
- android 确认对话框实例
- Android/Ophone中的悬浮对话框和即点即关对话框
- Android基础 - 对话框和浮动Activity[转]
- QT学习笔记4---登陆对话框
- 采用我这个方式登陆developer.android.com
- 登陆对话框代码
- Android基础 - 对话框和浮动Activity【转】
- 谷歌ANDROID手机将登陆中国
- Android/Ophone中的悬浮对话框和即点即关对话框
- 从J2EE转向Android的第十天-----对话框(Dialog)和通知(Notification)