版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
【移動應(yīng)用開發(fā)技術(shù)】Android中怎么利用MVP實現(xiàn)登錄注冊功能
這篇文章給大家介紹Android中怎么利用MVP實現(xiàn)登錄注冊功能,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。model包:import
com.bwei.mvps.bean.UserBean;
public
interface
IUserModel
{
void
setFirstName(String
firstName);
void
setLastName(String
lastName);
String
getFirstName();
String
getLastName();
//根據(jù)id獲取對象
UserBean
load(int
id);
}import
android.util.Log;
import
com.bwei.mvps.bean.UserBean;
public
class
UserModel
implements
IUserModel
{
@Override
public
void
setFirstName(String
firstName)
{
Log.i("xxx",
firstName);
}
@Override
public
void
setLastName(String
lastName)
{
Log.i("xxx",
lastName);
}
@Override
public
String
getFirstName()
{
return
null;
}
@Override
public
String
getLastName()
{
return
null;
}
@Override
public
UserBean
load(int
id)
{
//查詢數(shù)據(jù)庫或聯(lián)網(wǎng)獲取數(shù)據(jù)
Log.i("fff",
id
+
"");
return
new
UserBean("張",
"三");
}
}View包public
interface
UserView
{
void
setFirstName(String
firstName);
void
setLastName(String
lastName);
int
getId();
String
getFirstName();
String
getLastName();
}presenter包:import
android.util.Log;
import
com.bwei.mvps.MainActivity;
import
com.bwei.mvps.bean.UserBean;
import
com.bwei.mvps.model.IUserModel;
import
com.bwei.mvps.model.UserModel;
import
com.bwei.mvps.view.UserView;
public
class
UserPresenter
{
private
UserView
userview;
private
final
IUserModel
iUserModel;
public
UserPresenter(UserView
userview)
{
this.userview
=
userview;
iUserModel
=
new
UserModel();
}
//保存數(shù)據(jù)
public
void
saveUser(int
id,
String
firstName,
String
lastName)
{
UserBean
userBean
=
iUserModel.load(id);
Log.i("sss",
"id:"
+
id
+
",firstName:"
+
firstName
+
",lastName:"
+
lastName);
}
//查詢數(shù)據(jù)
public
void
find(int
id)
{
UserBean
userBean
=
iUserModel.load(id);
String
firstName
=
userBean.getFirstName();
String
lastName
=
userBean.getLastName();
userview.setFirstName(firstName);
userview.setLastName(lastName);
Log.i("aaa",
"id:"
+
id
+
",firstName:"
+
firstName
+
",lastName:"
+
lastName);
}
}XML<?xml
version="1.0"
encoding="utf-8"?>
<LinearLayout
xmlns:android="/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="70dp"
android:layout_height="wrap_content"
android:text="ID"/>
<EditText
android:id="@+id/et_id"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="70dp"
android:layout_height="wrap_content"
android:text="FirstName"/>
<EditText
android:id="@+id/et_first_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="70dp"
android:layout_height="wrap_content"
android:text="LastName"/>
<EditText
android:id="@+id/et_last_name"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/bt_register"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="注冊"/>
<Button
android:id="@+id/bt_login"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="登錄"/>
</LinearLayout>
</LinearLayout>Mactivityimport
android.support.v7.app.AppCompatActivity;
import
android.os.Bundle;
import
android.view.View;
import
android.widget.Button;
import
android.widget.EditText;
import
com.bwei.mvps.presenter.UserPresenter;
import
com.bwei.mvps.view.UserView;
public
class
MainActivity
extends
AppCompatActivity
implements
View.OnClickListener,
UserView
{
private
EditText
et_id;
private
EditText
et_first_name;
private
EditText
et_last_name;
private
Button
bt_login;
private
Button
bt_register;
private
UserPresenter
userPresenter;
@Override
protected
void
onCreate(Bundle
savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//找控件
et_id
=
(EditText)
findViewById(R.id.et_id);
et_first_name
=
(EditText)
findViewById(R.id.et_first_name);
et_last_name
=
(EditText)
findViewById(R.id.et_last_name);
bt_login
=
(Button)
findViewById(R.id.bt_login);
bt_register
=
(Button)
findViewById(R.id.bt_register);
bt_login.setOnClickListener(this);
bt_register.setOnClickListener(this);
//聲明UserPresenter
userPresenter
=
new
UserPresenter(this);
}
@Override
public
void
onClick(View
view)
{
switch
(view.getId())
{
case
R.id.bt_register://保存數(shù)據(jù)
userPresenter.saveUser(getId(),
getFirstName(),
getLastName());
break;
case
R.id.bt_login:
userPresenter.find(getId());
break;
}
}
@Override
public
void
setFirstName(String
firstName)
{
et_first_name.setText(firstName);
}
@Override
public
void
setLastName(String
lastName)
{
et_last_name.setText(lastName);
}
@Override
public
int
getId()
{
return
new
Integer(et_id.getTex
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 黑龍江2025年黑龍江省科學(xué)院智能制造研究所招聘博士科研人員筆試歷年參考題庫附帶答案詳解
- 職業(yè)健康與員工職業(yè)發(fā)展:醫(yī)療組織健康績效
- 菏澤2025年山東菏澤巨野縣中醫(yī)醫(yī)院招聘急需專業(yè)技術(shù)人員26人筆試歷年參考題庫附帶答案詳解
- 秦皇島2025年河北秦皇島市體育局招聘事業(yè)單位工作人員2人筆試歷年參考題庫附帶答案詳解
- 湛江廣東湛江市坡頭區(qū)財政局招聘三類編外人員筆試歷年參考題庫附帶答案詳解
- 海南2025年海南省第二衛(wèi)生學(xué)校招聘20人筆試歷年參考題庫附帶答案詳解
- 杭州浙江杭州市東潤外國語學(xué)校編外人員招聘4人筆試歷年參考題庫附帶答案詳解
- 成都2025年四川成都青羊區(qū)招聘社區(qū)工作者和黨建服務(wù)專員117人筆試歷年參考題庫附帶答案詳解
- 廣州廣東廣州市越秀區(qū)東山街招聘輔助人員筆試歷年參考題庫附帶答案詳解
- 天津2025年天津市市場監(jiān)督管理委員會所屬事業(yè)單位招聘13人筆試歷年參考題庫附帶答案詳解
- 癌癥患者生活質(zhì)量量表EORTC-QLQ-C30
- QCT55-2023汽車座椅舒適性試驗方法
- 孕產(chǎn)婦妊娠風(fēng)險評估表
- 消化系統(tǒng)疾病健康教育宣教
- 河南省洛陽市2023-2024學(xué)年九年級第一學(xué)期期末質(zhì)量檢測數(shù)學(xué)試卷(人教版 含答案)
- Unit-3-Reading-and-thinking課文詳解課件-高中英語人教版必修第二冊
- 新版出口報關(guān)單模板
- 14K118 空調(diào)通風(fēng)管道的加固
- 加油站財務(wù)管理制度細(xì)則
- 全過程工程咨詢服務(wù)技術(shù)方案
- YS/T 1152-2016粗氫氧化鈷
評論
0/150
提交評論