直接贴代码吧
_ok.setClickable(false); // 初始化不可点击
_ok.setEnabled(false);
_edit = (EditText)findViewById(R.id.fb_status_eidt);
//主要是监听器里接口的实现
_edit.addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
//关键是这里,监听输入的字符串,如果大于零,则可点击,enable.
if(s.length()>0){
_ok.setClickable(true);
_ok.setEnabled(true);
}else{
_ok.setClickable(false);
_ok.setEnabled(false);
}
}
});
下面是selector(btn_bg_ok.xml)的内容,不同状态下,button的颜色不同
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_pressed="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_selected="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_enabled="false" android:drawable="@drawable/d_btbg_over"/>
<item android:state_enabled="true" android:drawable="@drawable/d_btbg_out"/>
<item android:drawable="@drawable/d_btbg_out" />
</selector>
button关联btn_bg_ok.xml
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fb_status_ok"
android:text="@string/str_status_ok"
android:textColor="#ffffffff"
android:background="@drawable/btn_bg_ok"
android:layout_marginRight="3dip"
android:layout_marginLeft="3dip"/>
_ok.setClickable(false); // 初始化不可点击
_ok.setEnabled(false);
_edit = (EditText)findViewById(R.id.fb_status_eidt);
//主要是监听器里接口的实现
_edit.addTextChangedListener(new TextWatcher(){
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
//关键是这里,监听输入的字符串,如果大于零,则可点击,enable.
if(s.length()>0){
_ok.setClickable(true);
_ok.setEnabled(true);
}else{
_ok.setClickable(false);
_ok.setEnabled(false);
}
}
});
下面是selector(btn_bg_ok.xml)的内容,不同状态下,button的颜色不同
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_pressed="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_selected="true" android:drawable="@drawable/d_btbg_over" />
<item android:state_enabled="false" android:drawable="@drawable/d_btbg_over"/>
<item android:state_enabled="true" android:drawable="@drawable/d_btbg_out"/>
<item android:drawable="@drawable/d_btbg_out" />
</selector>
button关联btn_bg_ok.xml
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fb_status_ok"
android:text="@string/str_status_ok"
android:textColor="#ffffffff"
android:background="@drawable/btn_bg_ok"
android:layout_marginRight="3dip"
android:layout_marginLeft="3dip"/>