接口回调实现登陆注册界面
来源:互联网 发布:2017网络直播平台排名 编辑:程序博客网 时间:2024/06/05 17:41
依赖:
compile 'com.google.code.gson:gson:2.8.2'compile 'org.xutils:xutils:3.3.36'权限:
<uses-permission android:name="android.permission.INTERNET"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
记的在清单中配置app文件
App类
注册布局:public class MyApp extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this); x.Ext.setDebug(false); //输出debug日志,开启会影响性能 }}记的还有个bean层
<TextView android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="注册" /><EditText android:id="@+id/myphone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入手机号"/><EditText android:id="@+id/mypassword" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入密码"/><Button android:id="@+id/liji" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_horizontal" android:text="立即注册"/>
注册:
public class ZhuCeActivity extends AppCompatActivity implements View.OnClickListener{ private EditText myphone,mypassword; private Button liji; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_zhu_ce); init(); liji.setOnClickListener(this); } //初始化 private void init() { myphone = (EditText) findViewById(R.id.myphone); mypassword = (EditText) findViewById(R.id.mypassword); liji = (Button) findViewById(R.id.liji); } @Override public void onClick(View view) { switch (view.getId()) { case R.id.liji: String model = myphone.getText().toString().trim(); String password = mypassword.getText().toString().trim(); Toast.makeText(this, "111", Toast.LENGTH_SHORT).show(); if (checkDate(model, password)) { Toast.makeText(ZhuCeActivity.this, "2222", Toast.LENGTH_SHORT).show(); final RequestParams params = new RequestParams("http://120.27.23.105/user/reg"); params.addQueryStringParameter("mobile", model); params.addQueryStringParameter("password", password); x.http().get(params, new Callback.CacheCallback<String>() { @Override public void onSuccess(String result) { Gson gson = new Gson(); Bean bean = gson.fromJson(result, Bean.class); if (bean.getCode().equals("1")) { Intent intent = new Intent(ZhuCeActivity.this,MainActivity.class); startActivity(intent); } } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } @Override public boolean onCache(String result) { return false; } }); } break; } } /** *验证输入的合法性 * @param model * @param password * @return */ private boolean checkDate(String model,String password){ if(TextUtils.isEmpty(model)|| TextUtils.isEmpty(password)){ Toast.makeText(ZhuCeActivity.this,"手机号或密码不能为空",Toast.LENGTH_SHORT).show(); return false; } if(!isphone(model)){ Toast.makeText(ZhuCeActivity.this,"手机号格式不对",Toast.LENGTH_SHORT).show(); return false; } if(password.length()<6){ Toast.makeText(ZhuCeActivity.this,"密码小于6位数",Toast.LENGTH_SHORT).show(); return false; } return true; } private Boolean isphone(String name){ if(name.length()==11){ Pattern pattern = Pattern.compile("^1[3|4|5|6|7|8][0-9]\\d{8}$"); Matcher matcher = pattern.matcher(name); return matcher.matches(); }return null; }}
登录布局
<TextView android:layout_gravity="center_horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登录" /><EditText android:id="@+id/phone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入手机号"/><EditText android:id="@+id/password" android:layout_width="wrap_content" android:layout_height="wrap_content" android:hint="请输入密码"/><LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <Button android:id="@+id/deng" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="登录"/> <Button android:id="@+id/zhu" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="注册"/></LinearLayout>登录:
public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private EditText etphone,etpassword; private Button deng,zhuce; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); zhuce.setOnClickListener(this); deng.setOnClickListener(this); } private void init() { etphone = (EditText) findViewById(R.id.phone); etpassword = (EditText) findViewById(R.id.password); deng = (Button) findViewById(R.id.deng); zhuce = (Button) findViewById(R.id.zhu); } @Override public void onClick(View view) { switch (view.getId()){ case R.id.zhu: Intent intent = new Intent(MainActivity.this, ZhuCeActivity.class); startActivity(intent); break; case R.id.deng: String model = etphone.getText().toString().trim(); String password = etpassword.getText().toString().trim(); Toast.makeText(this, "111", Toast.LENGTH_SHORT).show(); if(checkDate(model,password)){ Toast.makeText(this, "2222", Toast.LENGTH_SHORT).show(); final RequestParams params = new RequestParams("http://120.27.23.105/user/login"); params.addQueryStringParameter("mobile",model); params.addQueryStringParameter("password",password); x.http().get(params, new Callback.CacheCallback<String>() { @Override public void onSuccess(String result) { Gson gson = new Gson(); Bean bean = gson.fromJson(result, Bean.class); Log.e("xxx",result); if(bean.getCode().equals("0")){ Intent intent1 = new Intent(MainActivity.this,ShopActivity.class); startActivity(intent1); } } @Override public void onError(Throwable ex, boolean isOnCallback) { } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } @Override public boolean onCache(String result) { return false; } }); } break; } } private boolean checkDate(String model,String password){ if(TextUtils.isEmpty(model)|| TextUtils.isEmpty(password)){ Toast.makeText(MainActivity.this,"手机号或密码不能为空",Toast.LENGTH_SHORT).show(); return false; } if(!isphone(model)){ Toast.makeText(MainActivity.this,"手机号格式不对",Toast.LENGTH_SHORT).show(); return false; } if(password.length()<6){ Toast.makeText(MainActivity.this,"密码小于6位数",Toast.LENGTH_SHORT).show(); return false; } return true; } private Boolean isphone(String name){ if(name.length()==11){ Pattern pattern = Pattern.compile("^1[3|4|5|6|7|8][0-9]\\d{8}$"); Matcher matcher = pattern.matcher(name); return matcher.matches(); } return null; }}
阅读全文
0 0
- 接口回调实现登陆注册界面
- QT登陆注册界面
- 模拟登陆注册界面
- 修改DEDE注册登陆界面
- 聊天登陆之注册界面
- 用户注册登陆查询界面
- 跨域登陆,注册接口
- 一,注册与登陆接口
- 使用层级观察器HierarchyViewer综合各种布局实现Android QQ2012登陆界面和注册界面
- 使用层级观察器hierarchyviewer综合各种布局实现Android QQ2012登陆界面和注册界面
- 使用层级观察器hierarchyviewer综合各种布局实现Android QQ2012登陆界面和注册界面
- 登陆注册如何实现
- okhttp3实现注册登陆
- 集合实现注册登陆
- 登陆注册实现流程
- Mvp实现登陆注册
- MVP实现登陆注册
- MVP实现登陆注册
- HDOJ 1228 A + B(水题)
- 每次运行appium时需要安装unlock,setting,inputmanager三个apk文件的解决方法
- iOS推送javaPNS源码解析二,消息体类
- 经典IT书留存
- java面试宝典
- 接口回调实现登陆注册界面
- 创建结点操作表格
- Nginx功能简介与基本配置总结
- Spring Boot学习之旅:(十四)整合hibernate
- Java中内存的引用(详细)
- C程序的学习
- 简单理解"use strict"
- cqa&retrieval based chatbot note
- iOS推送javaPNS源码解析三,服务器类