android——SQLite实现简单的注册登陆
来源:互联网 发布:简明python教程 在线 编辑:程序博客网 时间:2024/06/11 09:10
1,Main_activity的xmL配置
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:background="@drawable/b3" 6 android:orientation="vertical" 7 tools:context="${relativePackage}.${activityClass}" > 8 9 <TextView10 android:layout_width="match_parent"11 android:layout_height="15dp"12 android:background="#56a692"13 android:gravity="bottom"14 android:text="@string/main_name1"15 android:textColor="#fff"16 android:textSize="12sp" />17 18 <TextView19 android:layout_width="match_parent"20 android:layout_height="80dp"21 android:gravity="center"22 android:text="@string/main_name1"23 android:textSize="20sp"24 android:textStyle="italic" />25 26 <TextView27 android:layout_width="match_parent"28 android:layout_height="38dp"29 android:background="#CD661D" />30 31 <TextView32 android:layout_width="match_parent"33 android:layout_height="30dp"34 android:text="@string/main_name6"35 android:textSize="15sp"36 android:textStyle="italic" />37 38 <EditText39 android:id="@+id/editText1"40 android:layout_width="match_parent"41 android:layout_height="wrap_content"42 android:layout_marginTop="15dp"43 android:ems="10"44 android:hint="@string/main_name2" >45 46 <requestFocus />47 </EditText>48 49 <EditText50 android:id="@+id/editText2"51 android:layout_width="match_parent"52 android:layout_height="wrap_content"53 android:layout_marginTop="34dp"54 android:ems="10"55 android:hint="@string/main_name3" />56 57 <TextView58 android:layout_width="match_parent"59 android:layout_height="60dp"60 android:layout_weight="0.00" />61 62 <TextView63 android:layout_width="match_parent"64 android:layout_height="38dp"65 android:background="#CD661D" />66 67 <LinearLayout68 android:layout_width="wrap_content"69 android:layout_height="wrap_content"70 android:layout_weight="0.31"71 android:orientation="horizontal" >72 73 <Button74 android:id="@+id/button1"75 android:layout_width="155dp"76 android:layout_height="wrap_content"77 android:text="@string/main_name4" />78 79 <Button80 android:id="@+id/button2"81 android:layout_width="164dp"82 android:layout_height="wrap_content"83 android:text="@string/main_name5" />84 </LinearLayout>85 86 <TextView87 android:layout_width="match_parent"88 android:layout_height="50dp"89 android:background="#EECFA1" />90 91 </LinearLayout>
2,Register_activity 的XML配置
1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:background="@drawable/b1" 6 android:orientation="vertical" 7 tools:context="${relativePackage}.${activityClass}" > 8 9 <TextView10 android:layout_width="match_parent"11 android:layout_height="15dp"12 android:background="#56a692"13 android:gravity="bottom"14 android:text="@string/register_name"15 android:textColor="#fff"16 android:textSize="12sp" />17 18 <TextView19 android:layout_width="match_parent"20 android:layout_height="wrap_content"21 android:gravity="center"22 android:text="@string/register_name6"23 android:textColor="#B22222"24 android:textSize="20sp"25 android:textStyle="italic" />26 27 <TextView28 android:layout_width="wrap_content"29 android:layout_height="100dp"30 android:gravity="bottom" />31 32 <TextView33 android:layout_width="match_parent"34 android:layout_height="wrap_content"35 android:background="#B2DFEE"36 android:gravity="bottom"37 android:text="@string/register_name7"38 android:textStyle="italic" />39 40 <EditText41 android:id="@+id/etid"42 android:layout_width="match_parent"43 android:layout_height="wrap_content"44 android:ems="10"45 android:hint="@string/register_name2" >46 47 <requestFocus />48 </EditText>49 50 <TextView51 android:layout_width="match_parent"52 android:layout_height="wrap_content"53 android:gravity="center"54 android:textColor="#B22222"55 android:textSize="20sp"56 android:textStyle="italic" />57 58 <EditText59 android:id="@+id/etname"60 android:layout_width="match_parent"61 android:layout_height="wrap_content"62 android:ems="10"63 android:hint="@string/register_name3" />64 65 <TextView66 android:layout_width="match_parent"67 android:layout_height="wrap_content"68 android:background="#B2DFEE"69 android:gravity="center"70 android:textColor="#B22222"71 android:textSize="20sp"72 android:textStyle="italic" />73 74 <LinearLayout75 android:layout_width="wrap_content"76 android:layout_height="0dp"77 android:layout_weight="0.84"78 android:orientation="horizontal" >79 80 <Button81 android:id="@+id/btn_qu"82 android:layout_width="155dp"83 android:layout_height="wrap_content"84 android:text="@string/register_name4" />85 86 <Button87 android:id="@+id/btn_sure"88 android:layout_width="163dp"89 android:layout_height="wrap_content"90 android:text="@string/register_name5" />91 </LinearLayout>92 93 <TextView94 android:layout_width="match_parent"95 android:layout_height="50dp"96 android:background="#EECFA1" />97 98 </LinearLayout>
3,SQLite的配置创建数据库和表
例如:新建类sqliteopenhelper
package com.example.dbtest;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;//新建类Sqliteopenhelper 继承于SQLiteOpenHelperpublic class Sqliteopenhelper extends SQLiteOpenHelper { //数据库名: private static final String DBNAME="test.db"; //表名 private static final String TABLENAME="student"; private static final String GOODSNAME="goods"; //版本号:具体我也不知道是什么,照着写就行了 private static final int TESTVERSION=1; public Sqliteopenhelper(Context context) { super(context, DBNAME, null, TESTVERSION); // TODO Auto-generated constructor stub } //初始化,创建表 @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub String sql1="create table"+" "+TABLENAME+"(id varchar,name varchar)";String sql2="create table"+" "+GOODSNAME+"(LF varchar,name varchar,miaoshu varchar)"; db.execSQL(sql1); db.execSQL(sql2); } //失败后删除,重新创建 @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub if(newVersion>oldVersion) { String sql1="drop table if exists"+TABLENAME; String sql2="drop table if exists"+GOODSNAME; db.execSQL(sql1); db.execSQL(sql2); this.onCreate(db); } }}
4,Main_activity.java 调用并且实现验证数据库内信息
1 package com.example.dbtest; 2 3 import android.app.Activity; 4 import android.app.AlertDialog; 5 import android.app.AlertDialog.Builder; 6 import android.content.DialogInterface; 7 import android.content.Intent; 8 import android.database.Cursor; 9 import android.database.sqlite.SQLiteDatabase; 10 import android.database.sqlite.SQLiteException; 11 import android.database.sqlite.SQLiteOpenHelper; 12 import android.os.Bundle; 13 import android.view.View; 14 import android.view.View.OnClickListener; 15 import android.widget.Button; 16 import android.widget.EditText; 17 import android.widget.Toast; 18 19 public class MainActivity extends Activity { 20 21 private EditText et_id, et_name; 22 private Button btn_test, btn_local; 23 //1,SQLite的声明 24 SQLiteOpenHelper helper; 25 private String _id; 26 private String _name; 27 28 @Override 29 protected void onCreate(Bundle savedInstanceState) { 30 super.onCreate(savedInstanceState); 31 setContentView(R.layout.activity_main); 32 // 2,数据库的创建,及调用 33 helper = new Sqliteopenhelper(this); 34 helper.getWritableDatabase(); 35 36 et_id = (EditText) findViewById(R.id.editText1); 37 et_name = (EditText) findViewById(R.id.editText2); 38 btn_test = (Button) findViewById(R.id.button1); 39 btn_local = (Button) findViewById(R.id.button2); 40 41 btn_test.setOnClickListener(new testListener()); 42 btn_local.setOnClickListener(new localListener()); 43 44 } 45 46 class testListener implements OnClickListener { 47 48 @Override 49 public void onClick(View v) { 50 // TODO Auto-generated method stub 51 Intent intent = new Intent(MainActivity.this, Register.class); 52 startActivity(intent); 53 } 54 55 } 56 //登陆按钮 57 58 class localListener implements OnClickListener { 59 60 @Override 61 public void onClick(View v) { 62 // TODO Auto-generated method stub 63 _id = et_id.getText().toString(); 64 _name = et_name.getText().toString(); 65 if (_name.equals("") || _id.equals("")) { Toast.makeText(getApplicationContext(), "请输入账号密 码!",Toast.LENGTH_SHORT).show(); 66 } else { 67 sureuser(_id, _name); 68 } 69 } 70 71 } 72 73 private void sureuser(String userid, String username) { 74 //3,数据库的操作,查询 75 SQLiteDatabase sdb = helper.getReadableDatabase(); 76 try { 77 String sql = "select * from student where id=? and name=?"; 78 // 实现遍历id和name 79 Cursor cursor = sdb.rawQuery(sql, new String[] { _id, _name }); 80 if (cursor.getCount() > 0) { 81 Intent intent = new Intent(MainActivity.this, User.class); 82 Bundle bundle = new Bundle(); 83 bundle.putString("name", _name); 84 intent.putExtras(bundle); 85 startActivity(intent); 86 } else { 87 Toast.makeText(getApplicationContext(), "登录失败", 88 Toast.LENGTH_SHORT).show(); 89 } 90 cursor.close(); 91 sdb.close(); 92 } catch (SQLiteException e) { 93 oast.makeText(getApplicationContext(), "亲,请注册!", 94 Toast.LENGTH_SHORT).show(); 95 } 96 } 97 98 99 100 101 }
5,Register_activity.java
package com.example.dbtest;import android.app.Activity;import android.content.ContentValues;import android.content.Intent;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteException;import android.database.sqlite.SQLiteOpenHelper;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class Register extends Activity { private EditText etid,etname; private Button btn_qu,btn_sure; SQLiteOpenHelper helper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); helper=new Sqliteopenhelper(this); helper.getWritableDatabase(); etid=(EditText)findViewById(R.id.etid); etname=(EditText)findViewById(R.id.etname); btn_qu=(Button)findViewById(R.id.btn_qu); btn_sure=(Button)findViewById(R.id.btn_sure); btn_sure.setOnClickListener(new sureListener()); btn_qu.setOnClickListener(new quListener()); } class sureListener implements OnClickListener{ @Override public void onClick(View v) { // TODO Auto-generated method stub try{ SQLiteDatabase sdb=helper.getWritableDatabase(); ContentValues values=new ContentValues(); values.put("id",etid.getText().toString()); values.put("name",etname.getText().toString()); sdb.insert("student",null, values);Toast.makeText(getApplicationContext(), "注册成功", Toast.LENGTH_SHORT).show(); Intent intent=new Intent(Register.this,User.class); Bundle bundle=new Bundle(); bundle.putString("name",etname.getText().toString()); intent.putExtras(bundle); startActivity(intent);; } catch(SQLiteException e) {Toast.makeText(getApplicationContext(), "注册失败", Toast.LENGTH_SHORT).show();} } } class quListener implements OnClickListener{ @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent=new Intent(Register.this,MainActivity.class); startActivity(intent); } } }
6,效果图所示
0 0
- android——SQLite实现简单的注册登陆
- Android 实现简单的登陆注册功能(SharedPreferences和SQLite)
- android 简单登陆注册的实现
- android 实现简单注册登陆公能
- android之利用SQLite数据库实现登陆和注册
- Android之利用SQLite数据库实现登陆和注册
- android之利用SQLite数据库实现登陆和注册
- android之利用SQLite数据库实现登陆和注册
- Android之利用SQLite数据库实现登陆和注册
- 超简单的登陆注册页面实现
- struts2+hibernate4实现简单的注册登陆
- 利用SQLite数据库实现登陆和注册
- 基于Struts2和Android的简单登陆注册功能的设计与实现(待完善)
- android开发 应用SQLite实现简单注册界面
- Android开发-UI控件:实现登陆页面并跳转和简单的注册页面
- ECMall 禁止中文登陆名注册的简单实现方法
- 网页注册和登陆简单实现的思路分析
- SpringBoot实现简单的注册与登陆功能
- 二维数组去重
- listener failed: zbx_tcp_listen() fatal error: unable to serve on any address [[-]:20050]
- Android 开源框架Universal-Image-Loader完全解析(一)--- 基本介绍及使用
- OpenSceneGraph实现的NeHe OpenGL教程 - 第十九课_附录1
- Java模拟玩家洗牌发牌小程序
- android——SQLite实现简单的注册登陆
- CSS计量单位-实现元素大小随页面同步缩放
- 让人又爱又恨的信用评级
- Hbase原理、基本概念、基本架构
- java正则表达式中的数量词
- mysql运维
- nginx 自定义header 无法转发问题
- vi/vim 批量注释和取消注释
- 字符串排列组合