接口回调实现登陆注册界面

来源:互联网 发布: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;    }}


原创粉丝点击