package com.android.nxd;

//Download by 链接已屏蔽

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;

import android.widget.Toast;

public class LoginActivity extends Activity {

private EditText mAccount;

private EditText mPwd;

private Button mRegisterButton;

private Button mLoginButton;

private Button mCancleButton;

private View loginView;

private View loginSuccessView;

private TextView loginSuccessShow;

private UserDataManager mUserDataManager;

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.loginpage);

mAccount = (EditText) findViewById(R.id.login_edit_account);

mPwd = (EditText) findViewById(R.id.login_edit_pwd);

mRegisterButton = (Button) findViewById(R.id.login_btn_register);

mLoginButton = (Button) findViewById(R.id.login_btn_login);

mCancleButton = (Button) findViewById(R.id.login_btn_cancle);

loginView=findViewById(R.id.login_view);

loginSuccessView=findViewById(R.id.login_success_view);

loginSuccessShow=(TextView) findViewById(R.id.login_success_show);

mRegisterButton.setOnClickListener(mListener);

mLoginButton.setOnClickListener(mListener);

mCancleButton.setOnClickListener(mListener);

if (mUserDataManager == null) {

mUserDataManager = new UserDataManager(this);

mUserDataManager.openDataBase();

}

}

OnClickListener mListener = new OnClickListener() {

public void onClick(View v) {

switch (v.getId()) {

case R.id.login_btn_register:

register();

break;

case R.id.login_btn_login:

login();

break;

case R.id.login_btn_cancle:

cancle();

break;

}

}

};

public void login() {

if (isUserNameAndPwdValid()) {

String userName = mAccount.getText().toString().trim();

String userPwd = mPwd.getText().toString().trim();

int result=mUserDataManager.findUserByNameAndPwd(userName, userPwd);

if(result==1){

//login success

loginView.setVisibility(View.GONE);

loginSuccessView.setVisibility(View.VISIBLE);

loginSuccessShow.setText(getString(R.string.user_login_sucess, userName));

Toast.makeText(this, getString(R.string.login_sucess),

Toast.LENGTH_SHORT).show();

}else if(result==0){

//login failed,user does't exist

Toast.makeText(this, getString(R.string.login_fail),

Toast.LENGTH_SHORT).show();

}

}

}

public void register() {

if (isUserNameAndPwdValid()) {

String userName = mAccount.getText().toString().trim();

String userPwd = mPwd.getText().toString().trim();

//check if user name is already exist

int count=mUserDataManager.findUserByName(userName);

if(count>0){

Toast.makeText(this, getString(R.string.name_already_exist, userName),

Toast.LENGTH_SHORT).show();

return ;

}

UserData mUser = new UserData(userName, userPwd);

mUserDataManager.openDataBase();

long flag = mUserDataManager.insertUserData(mUser);

if (flag == -1) {

Toast.makeText(this, getString(R.string.register_fail),

Toast.LENGTH_SHORT).show();

}else{

Toast.makeText(this, getString(R.string.register_sucess),

Toast.LENGTH_SHORT).show();

}

}

}

public void cancle() {

mAccount.setText("");

mPwd.setText("");

}

public boolean isUserNameAndPwdValid() {

if (mAccount.getText().toString().trim().equals("")) {

Toast.makeText(this, getString(R.string.account_empty),

Toast.LENGTH_SHORT).show();

return false;

} else if (mPwd.getText().toString().trim().equals("")) {

Toast.makeText(this, getString(R.string.pwd_empty),

Toast.LENGTH_SHORT).show();

return false;

}

return true;

}

@Override

protected void onResume() {

if (mUserDataManager == null) {

mUserDataManager = new UserDataManager(this);

mUserDataManager.openDataBase();

}

super.onResume();

}

@Override

protected void onDestroy() {

super.onDestroy();

}

@Override

protected void onPause() {

if (mUserDataManager != null) {

mUserDataManager.closeDataBase();

mUserDataManager = null;

}

super.onPause();

}

}



更多源码 | 好库简介 | 网站地图 | 帮助中心 | 版权说明

Copyright© 2009-2012 OKBASE.NET All Rights Reserved 好库网 版权所有

android+注册+代码,简单的Android用户注册登录实现相关推荐

  1. android命令行工具 混淆,Android 混淆代码学习以及Android加密工具--APKProtect的使用ZZ...

    一:情景分析 有时候看到其他应用App的一些效果很炫,或者是功能实现很好就想着参考参考,于是乎,下载APK----反编译APK---查看源码....,但是悲剧来了....源码都是些a,b,c...等等 ...

  2. android单例模式代码,设计模式(一):Android 源码中的单例模式

    设计模式(一):Android 源码中的单例模式 2020-08-17 22:51 阅读数 57 <>什么是单例模式? 单例模式(Singleton) 是最常见也最简单的设计模式,它的目的 ...

  3. android 用代码模拟滑动,Android开发之使用150行代码实现滑动返回效果

    今天带大家实现滑动返回效果.,具体内容如下所示: 先看看效果图: 因为没有具体内容,也没有简书的图片资源,所以稍微简陋了点. 但是依然不妨碍我们的效果展示~ OK,接下来惯例,通过阅读本文你能学习到: ...

  4. android常用代码合集,Android常用代码

    1.图片旋转 Bitmap bitmapOrg = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable. ...

  5. android通过代码设置铃声_使用VS Code调试Android C_C++代码(无需Android源码)

    需求分析 在开发 Android Native 程序时(仅 C/C++代码,无 APK 应用),之前在调试的过程中一直只是使用添加 LOG 的方式来定位程序的问题,而在 Linux 上开发平台程序时, ...

  6. android中注册代码怎么写,Android P HIDL demo代码编写 (原创)

    之前的文章已经分析了hidl服务的注册和调用,这篇文章来总结下一个hidl的服务如何编写. 缩写hal文件 首先要确认放置文件夹和接口的包名,因为这跟后面使用脚本生成一部分代码有关,一般默认的放在ha ...

  7. android折线图,简单的android折线图绘制

    上图 说到android的折线图,我就必须要说一下关于绘制view的几个重要的工具,Canvas(画布),Paint(画笔),Path(路径). Canvas顾名思义就是用来作画的板子或者说是布.没有 ...

  8. android 注册两次广播,android 4.4 动态注册+静态注册电话短信广播后收到两次onReceive回调的问题...

    在android4.4手机里,先静态注册一次广播,以后在代码里动态注册一次该广播,会同时收到两次onReceive回调,我在htc 802d手机上测试(使用官方升级版,升级到4.4)测试android ...

  9. android原生代码转h5,Android原生和H5交互;Android和H5混合开发;WebView点击H5界面跳转到Android原生界面。...

    当时业务的需求是这样的,H5有一个活动商品列表的界面,IOS和Android共用这一个界面,点击商品可以跳转到Android原生的商品详情界面并传递商品ID:  大概就是点击H5界面跳转到Androi ...

  10. android 字母验证码,简单实现Android验证码

    安卓验证码的简单实现 我们经常在登录或者注册的时候要求输入验证码,这里简单介绍一下一种方法 效果如下 首先是要获取 随机的四个字母组合,我这里是将26个字母存储到一个数组中,然后随机生成4个下标值,取 ...

最新文章

  1. 啥是指标陷阱?很多就出现在你的身边!
  2. stm32 systick分析
  3. leetcode算法题--最长回文子串
  4. java中常见的异常类
  5. 1011 A+B 和 C (15 分)(c语言)
  6. 如何在Spring MVC Test中避免”Circular view path” 异常
  7. 自定义hybris生成订单的ID格式
  8. 单片机的 FIFO循环队列实现
  9. JPA中的@MappedSuperclass
  10. [转] 谈谈JS中的函数节流
  11. 通过v$sqlarea,v$sql查询最占用资源的查询
  12. pytest源码_pytest文档60pytest.main()的使用
  13. 概率论与数理统计(一):教你一步步推贝叶斯公式
  14. python 中文字符串 编码转换_Python合集之Python字符串编码转换
  15. centos 7.5 安装ruby -bash: ruby: command not found
  16. 信息学竞赛学不学计算机史,关于信息学奥赛不得不知道的事
  17. 【运筹学】分支定界法 ( 分支定界法求整数规划示例 ) ★★
  18. jmeter性能测试实战——基础篇
  19. Python爬虫:皮皮虾短视频无水印下载
  20. 智能优化算法:蝗虫优化算法-附代码

热门文章

  1. CoreOS为Kubernetes量身打造分布式存储方案Torus
  2. swiper(轮播图)基本使用
  3. 计算机网络——网络层:控制层面
  4. 计算机无法连接路由器上网,为什么路由器无法连接到网络,但是路由器无法连接到互联网!...
  5. 实习收获之 获取json对象键值的几种方法
  6. 乐2 乐视X520_官方线刷包_救砖包_解账户锁
  7. 常见的Web服务器、应用服务器(Apache、tomcat、jetty、Nginx)简介及优缺点总结
  8. 页脚html模板,怎样用Photoshop设计漂亮的网页页脚模板实例教程
  9. 软考中级网络工程师学习笔记(知识点汇总)单点详细版
  10. 使用Spring Data MongoDB操作SequoiaDB巨杉数据库简易教程