(五)關於RxJava:項目小實例

經過前面對RxJava基礎的學習,而後今天在項目中應用起來了,目前是對界面交互的部分修改,後面確定會在網絡請求那作改動了網絡

注:Android中要在界面交互中用到RxJava,須要引用一個第三方的包RxBinding,配置方式跟第一篇文章中引入Retrolambda同樣,就能夠使用相關RxView等方法,可是須要肯定當前開發環境的SDK版本不低於14,不然,編譯不經過。異步

實例1以下 :ide

RxView.clicks(findViewById(R.id.iv_user_cha))
                .subscribe(new Action1<Void>() {
                    @Override
                    public void call(Void aVoid) {
                        user_login_et.setText("");
                    }
                });
學習

 

實例2以下:this

 RxView.clicks(findViewById(R.id.iv_pwd_yesorno_show)).subscribe(new Action1<Void>() {
            @Override
            public void call(Void aVoid) {
                if (!pwdFlag) {
                    AppLoginActivity.this.user_pwd_et.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
                    iv_pwd_yesorno_show.setBackgroundResource(R.drawable.iv_pwd_show);
                    pwdFlag = true;
                } else {
                    AppLoginActivity.this.user_pwd_et.setTransformationMethod(PasswordTransformationMethod.getInstance());
                    iv_pwd_yesorno_show.setBackgroundResource(R.drawable.iv_pwd_noshow);
                    pwdFlag = false;
                }
            }
        }); 
spa

 

 

注:我的以爲在安卓中引用RxJava仍是重點體如今異步和主線程切換那,對於界面交互,邏輯不是很複雜的,能夠不考慮替換成RxJava實現.net

相關文章
相關標籤/搜索