简单介绍一些EditText 的功能
<EditText android:id="@+id/et_search" android:layout_width="0dp" android:layout_height="40dp" android:layout_marginLeft="2dp" android:layout_weight="1" android:background="@null" android:hint="查询条件" />
android:hint="查询条件"展示给用户看需要输入的内容
android:background="@null"为了去掉EditText默认的下划线
android:focusableInTouchMode="true" android:focusable="true"
设置在其他控件当中,获取焦点,为了让EditText初始的时候不获取焦点
代码中的一些设置功能:
1、初始化控件
@BindView(R.id.et_search) EditText etSearch;
2、设置文本框的改变监听
etSearch.addTextChangedListener(watcher);
private TextWatcher watcher = new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void afterTextChanged(Editable editable) { String s = etSearch.getText().toString().trim(); //得到文本框的内容 } };3、获取焦点的监听
etSearch.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View view, boolean b) { if (b) { // 此处为得到焦点时的处理内容 } } else { // 此处为失去焦点时的处理内容 } } });
使用其他控件,控制焦点获取状态
@BindView(R.id.ic_ss) ImageView icSs;
使EditText失去焦点
icSs.setFocusable(true); icSs.setFocusableInTouchMode(true); icSs.requestFocus();点击编辑框后重新获取焦点