mvc模式

1、mainActivity.java



public class MainActivity extends AppCompatActivity {
/*
mvc:control与view层是activity
model编写逻辑层
                            java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
                            子线程不能更新UI
 */
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //得到控件
        final EditText username= (EditText) findViewById(R.id.username);
        final EditText password= (EditText) findViewById(R.id.password);
        Button login= (Button) findViewById(R.id.login);


      /*  Intent intent = new Intent(MainActivity.this, Main2Activity.class);
        startActivity(intent);*/


        final MvcModel mpdel=new MvcModel();
        login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //进行判断
                String user=username.getText().toString();
                if(TextUtils.isEmpty(user))
                {
                    Toast.makeText(MainActivity.this, "user用户名为空", Toast.LENGTH_SHORT).show();
                    return;
                }
                String pwd=password.getText().toString();
                if(TextUtils.isEmpty(pwd))
                {
                    Toast.makeText(MainActivity.this, "user密码为空", Toast.LENGTH_SHORT).show();
                    return;
                }
                    mpdel.login(user,pwd);
            }
        });
    //登录成功
        mpdel.setOnChilkLinster(new MvcModel.OnchilkLinster() {
            @Override
            public void Onchilk(final String result) {
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {
                        Toast.makeText(MainActivity.this, "成功"+result, Toast.LENGTH_SHORT).show();
                        System.out.println("111111111111111111");
                    }
                });
            }
        });
    }
}


2.model层



public class MvcModel {
    /*
    编写逻辑层


     */
    public void login(String username,String password){
        //请求网络
        OkHttpClient client=new OkHttpClient();
        final Request request=new Request.Builder().url("http://qhb.2dyt.com/Bwei/login?username=muhanxi&password=111&postkey=1503d").build();
        Call call=client.newCall(request);
        call.enqueue(new Callback() {
            @Override
            public void onFailure(Request request, IOException e) {


            }


            @Override
            public void onResponse(Response response) throws IOException {
                //成功的数据返回到view层界面,需要用到接口
                //判断接口是否为空
                if(linster!=null)
                {
                    linster.Onchilk(response.body().string());
                    System.out.println("22222222222222222");
                }


            }
        });
    }
    public  OnchilkLinster linster;


    public interface  OnchilkLinster{


        public void Onchilk(String result);


    }


    public  void setOnChilkLinster(OnchilkLinster linster)
    {
       this.linster=linster;
    }

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值