一丶任务详情
二丶改动后演示效果
三丶改动过程
分析:非常明显这里是须要监听EditText,推断输入字符串长度是否不为0来改变Button样式
首先的屡清楚代码逻辑在适当的位子加监听推断是最好的处理方法,然而并没有理清楚。原团队用Eclipse开发且java用的多。代码并没透彻理解(屡清楚某个功能点定会与大家分享)所以呢这里仅仅好自己加入
第一步xml设置button不可点击并改动样式
android:background="@color/login_bar_btn_enable"
android:enabled="false"
注意:这里button不可点击是设置enable属性
第二步监听EditText
这里一般常会用到的键盘监听
- edittext.setOnKeyListener(new View.OnKeyListener() {
- @Override
- public boolean onKey(View v, int keyCode, KeyEvent event) {
- textview.setText(edittext.getText());
- return false;
- }
- });
開始我也是使用这样的。然而达到的效果是非得输入键盘点击Enterbutton才可点击,明显须要的并非这样的结果,正确的代码片段贴上
//输入框为空不可点击 by jin
edt_orderNo.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
} @Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// 推断输入不为空。button可点击
if (edt_orderNo.length() != 0) {
but_queryChange.setEnabled(true);
but_queryChange.setBackgroundResource(R.drawable.login_bar_btn);
} else {
but_queryChange.setEnabled(false);
but_queryChange.setBackgroundResource(R.color.login_bar_btn_enable);
}
} @Override
public void afterTextChanged(Editable s) {
}
});
此方法是监听EditText输入过程。在onTextChanged中加入是为了更具体的监听输入
onTextChanged中的推断就不在赘述了
小结:
1.百度的姿势非常重要,说清楚需求才找得到想要的代码
2.依旧小白一个,一个功能点的代码都不能屡的十分清楚
欢迎增加Android&ios学习群:319010802