Android封装MVP实现登录注册功能
程序员文章站
2023-12-01 15:48:52
本文实例为大家分享了android封装mvp实现登录注册功能,供大家参考,具体内容如下
model包:
import com.bwei.mvps.bean.us...
本文实例为大家分享了android封装mvp实现登录注册功能,供大家参考,具体内容如下
model包:
import com.bwei.mvps.bean.userbean; /** * 1. 类的用途 * 2. @author forever * 3. @date 2017/9/1 16:00 */ public interface iusermodel { void setfirstname(string firstname); void setlastname(string lastname); string getfirstname(); string getlastname(); //根据id获取对象 userbean load(int id); }
import android.util.log; import com.bwei.mvps.bean.userbean; /** * 1. 类的用途 * 2. @author forever * 3. @date 2017/9/1 16:04 */ 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) { //查询数据库或联网获取数据 log.i("fff", id + ""); return new userbean("张", "三"); } }
view包
/** * 1. 类的用途 * 2. @author forever * 3. @date 2017/9/1 15:53 */ 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; /** * 1. 类的用途 * 2. @author forever * 3. @date 2017/9/1 16:05 */ public class userpresenter { private userview userview; private final iusermodel iusermodel; public userpresenter(userview userview) { this.userview = userview; iusermodel = new usermodel(); } //保存数据 public void saveuser(int id, string firstname, string lastname) { userbean userbean = iusermodel.load(id); log.i("sss", "id:" + id + ",firstname:" + firstname + ",lastname:" + lastname); } //查询数据 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="http://schemas.android.com/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>
mactivity
import 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://保存数据 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.gettext().tostring()); } @override public string getfirstname() { return et_first_name.gettext().tostring(); } @override public string getlastname() { return et_last_name.gettext().tostring(); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
下一篇: unity实现多点触控代码