Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能
更新時間:2020年10月21日 15:55:38 作者:Red&&Black
這篇文章主要為大家詳細介紹了Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了Android SQLite數(shù)據(jù)庫連接實現(xiàn)登錄功能的具體代碼,供大家參考,具體內(nèi)容如下
布局文件
border.xml
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 布局的背景顏色--> <!-- <solid android:color="#FFFFFF" />--> <!-- 邊框線的粗細和顏色--> <stroke android:width="0.01dp" android:color="#000" /> <padding android:bottom="5dp" android:left="5dp" android:right="5dp" android:top="5dp" /> <!-- 圓角--> <corners android:radius="5dp" /> </shape>
<?xml version="1.0" encoding="utf-8"?> <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <LinearLayout android:padding="5dp" android:background="@drawable/border" android:orientation="vertical" android:layout_gravity="center_horizontal" android:layout_width="360dp" android:layout_height="112dp"> <LinearLayout android:orientation="horizontal" android:layout_gravity="center_horizontal" android:layout_width="match_parent" android:layout_height="50dp"> <ImageView android:layout_marginRight="15dp" android:layout_gravity="center_vertical" android:layout_width="30dp" android:layout_height="30dp" app:srcCompat="@drawable/usn" android:id="@+id/usn"/> <!-- android:background="@null" 去掉下劃線 --> <EditText android:singleLine="true" android:background="@null" android:layout_width="match_parent" android:layout_height="match_parent" android:inputType="text" android:hint="用戶名" android:ems="10" android:id="@+id/username"/> </LinearLayout> <!-- 水平線--> <View android:layout_height="0.5dip" android:background="#686868" android:layout_width="match_parent"/> <LinearLayout android:orientation="horizontal" android:layout_gravity="center_horizontal" android:layout_width="match_parent" android:layout_height="50dp"> <ImageView android:layout_marginRight="15dp" android:layout_gravity="center_vertical" android:layout_width="30dp" android:layout_height="30dp" app:srcCompat="@drawable/pwd" android:id="@+id/密碼"/> <EditText android:singleLine="true" android:background="@null" android:layout_width="match_parent" android:layout_height="match_parent" android:inputType="textPassword" android:hint="密碼" android:ems="10" android:id="@+id/password"/> </LinearLayout> </LinearLayout> <Button android:layout_gravity="center_horizontal" android:background="#EF8D89" android:layout_marginTop="20dp" android:text="登 錄" android:onClick="userLogin" android:layout_width="360dp" android:layout_height="wrap_content" android:id="@+id/login"/> </android.support.constraint.ConstraintLayout>
MainActivity類
public class MainActivity extends AppCompatActivity implements View.OnClickListener{ //訪問數(shù)據(jù)庫的類 SQLiteDatabase db; //定義常量,作為消息的key public final static String MESSAGE_KEY="com.android2"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); /** * (參數(shù))1、context MainActivity * 2、name 數(shù)據(jù)庫名 * 3、 * 4、版本號 */ final DatabaseHelper databaseHelper = new DatabaseHelper(this,"emis.db",null,2); //獲得讀取數(shù)據(jù)庫權限 db = databaseHelper.getReadableDatabase(); setContentView(R.layout.activity_main); } /*響應*/ private void userLogin() { EditText et1 = findViewById(R.id.username); String username = et1.getText().toString(); EditText et2 = findViewById(R.id.password); String password = et2.getText().toString(); //游標類Cursor 負責生成讀寫數(shù)據(jù)庫的對象 Cursor cursor = db.rawQuery("SELECT * FROM users WHERE username=? AND password=?",new String[]{username,password}); //數(shù)據(jù)庫中有此數(shù)據(jù),登錄成功 if(cursor.getCount()>0){ Intent intent = new Intent(this,ReceiveActivity.class); intent.putExtra(MESSAGE_KEY,username); startActivity(intent); } else{ Toast.makeText(MainActivity.this,"用戶名或密碼錯誤!",Toast.LENGTH_SHORT).show(); } } }
ReceiveActivity類及布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".ReceiveActivity" > <TextView android:textSize="24dp" android:layout_gravity="center_vertical" android:id="@+id/output" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout>
package com.android02; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; public class ReceiveActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_receive); //獲取intent引用 Intent intent = getIntent(); //以MESSAGE_KEY獲取獲取編輯框文字 String message = intent.getStringExtra(MainActivity.MESSAGE_KEY); //以id獲取TextView TextView textView = findViewById(R.id.output); //顯示message textView.setText("歡迎!"+message); } }
測試:
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Android游戲開發(fā)實踐之人物移動地圖的平滑滾動處理
玩過rpg游戲的朋友應該都知道RPG的游戲地圖一般都比較大 今天我和大家分享一下在RPG游戲中如何來處理超出手機屏幕大小的游戲地圖。2014-06-06Android創(chuàng)建與解析XML(二)——詳解Dom方式
本篇文章主要介紹了Android創(chuàng)建與解析XML(二)——詳解Dom方式 ,這里整理了詳細的代碼,有需要的小伙伴可以參考下。2016-11-11Ionic2創(chuàng)建App啟動頁左右滑動歡迎界面
使用Ionic2創(chuàng)建應用非常簡單,只需在V1的命令后跟上--v2即可.這篇文章主要介紹了Ionic2創(chuàng)建App啟動頁左右滑動歡迎界面的相關資料,需要的朋友可以參考下2016-10-10Android給scrollView截圖超過屏幕大小形成長圖
這篇文章主要為大家詳細介紹了Android給scrollView截圖超過屏幕大小形成長圖,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12