簡單介紹一些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();點擊編輯框後重新獲取焦點