国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android設計登錄界面、找回密碼、注冊功能

2019-12-12 06:26:22
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android 登錄、找回密碼、注冊功能的實現代碼,供大家參考,具體內容如下

1.數據庫的設計

我在數據庫中添加了兩張表,一張表用來存儲用戶信息,諸如用戶名,密碼,手機號等,可任意添加。另一張表用來存儲上一個登錄用戶的賬戶信息,我是為了方便才另外創建了一張表去存儲,而且這張表我設計了它只能存儲一條信息,每次的存儲都是對上一條記錄的覆蓋。事實上,我嘗試過在存儲用戶信息的那張表內添加一個標識,用來標記上一次登錄的是哪一個帳號,但是這樣做的話,每次改變標識都需要遍歷整張表,十分的麻煩,而且我也不知道有什么更高效的方法,畢竟水平有限,在這方面涉水頗淺,如果看了這篇文章的人知道更有效方便的方法,請教教我,謝謝。

關于建表語句就不多說了,但是有唯一一點值得一提的是,根據Google官方 的建議,我們應該統一的將建表語句放置在一個終極類中,當然對于我們的全局變量也是一個道理,這樣方便管理,當你需要改變某一全局信息時,可直接找到,方便日后的維護。比如我的終極類就是下面這樣 ->

public final class GlobeManager { public GlobeManager() { } public static abstract class UserInfo { public static final String ID = "id"; public static final String USERNAME = "username"; public static final String USERPASSWORD = "password"; public static final String TABLENAME = "usertable"; public static final String DATABASENAME = "userdatabse"; public static final String PHONENUMBER = "phone"; public static final String CREATE_TABLE = "create table " + TABLENAME + "(" + ID + " integer primary key autoincrement," + USERNAME + " text," + PHONENUMBER + " text," + USERPASSWORD + " text)"; } public static String PHONEKEY = "phonekey"; public static abstract class RecentUsers { public static final String ID = "id"; public static final String RECENTNAME = "recentname"; public static final String RECENTPASSWORD = "recentpassword"; public static final String ONLYKEY = "key"; public static final String TABLENAME = "recenttable"; public static final String CREATE_TABLE= "create table "+ TABLENAME +"(" +ID + " integer primary key autoincrement," +RECENTNAME + " text," +RECENTPASSWORD +" text," +ONLYKEY + " text)"; }}

2.首先看看登錄界面

這里寫圖片描述

概要設計

Sign in 按鈕設置監聽事件,當用戶點擊該按鈕時,首先獲取到用戶在App ID 和 Password 輸入控件中輸入的信息,然后對信息進行以下判斷。

1).首先使用 TextUtils 中的 isEmpty() 方法判斷輸入信息是否為空(TextUtils.isEmpty() 這個方法對于參數為空或者”” 都會返回true)

2).在上一步驟正確執行之后,接下來就是將已經獲取到的用戶名和密碼與數據庫中的信息進行匹配 ,這個工作要由一個專門的數據庫管理類來完成,不可在Activity中進行此類操作,要根據單一職責原則來設計類。

3).若在數據庫中查詢到相關的用戶名和密碼就返回這個用戶類,將信息封裝在其中,如果沒有查到,就返回一個null,方便Activity 進行判斷。

3.注冊界面

這里寫圖片描述

關于 App ID 和 Password 的輸入,要注意進行相應合法性判斷,其次就是這個手機號碼,在真實項目中,這個選項應該有發送驗證碼的功能,因為手機號是可以用于帳號密碼找回的,非常重要。

4.密碼找回

這里寫圖片描述

這里只有一個 輸入手機號碼的控件,輸入時要進行合法性判斷,比如說如果位數小于11,那么就可以直接進行提示,而不是先去數據庫中找一遍,那樣效率是非常低的。如果輸入的手機號是合法性的,在到數據庫中去尋找,如果找到了,顯示用戶的信息 ->

這里寫圖片描述

在這里,提供了一個修改密碼的功能,畢竟如果用戶忘記了原先的密碼,可能會想要修改密碼的,在查看具體信息時能直接修改是非常人性化的設計。

5.關于AlertDialog.Builder

這里寫圖片描述

有時候,AlertDialog.Builder 提供給我們的樣式是不能夠滿足我們的,比如我想將PositiveButton 和 NegativeButton 設置成和我們主題一致的顏色,那么就需要自定義一個style,如下

 <style name="MyAlertDialog" parent="Theme.AppCompat.Light.Dialog.Alert"> //用于改變Button 的顏色 <item name="android:colorAccent">@color/colorAccent</item> //用于改變Message 字的顏色 <item name="android:textColorPrimary">#000000</item> </style> //用于改變Dialog 的背景顏色 <item name="android:background">#4CAF50</item>

然后只需要在代碼中這樣聲明,就可以使用自定義樣式了

復制代碼 代碼如下:
 final AlertDialog.Builder dialog = new AlertDialog.Builder(this,R.style.MyAlertDialog);

源碼下載地址:http://xiazai.VeVB.COm/201605/yuanma/AndroidAPP(VeVB.COm).rar

更多內容請參考專題:Android密碼使用教程

以上就是本文的全部內容,希望對大家學習Android軟件編程有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灵丘县| 墨竹工卡县| 合肥市| 保康县| 陆河县| 凤山市| 迁安市| 江门市| 汉源县| 佛冈县| 乐陵市| 长白| 蒙阴县| 湖州市| 盱眙县| 揭东县| 遵化市| 临沭县| 武隆县| 阳谷县| 屏山县| 东明县| 信宜市| 文水县| 郁南县| 昭平县| 乌兰县| 兴隆县| 朝阳市| 全南县| 高唐县| 赞皇县| 焉耆| 凤山县| 莱西市| 循化| 犍为县| 阳谷县| 黎川县| 中方县| 屯昌县|