EditText

EditText

可以支持输入的基本控件,继承自TextView,所以TextView具有的属性它也一样有

(1)字体相关

提示字体,就是无输入状态下的显示字体,某些提示信息

提示内容 android:hint =" 提示内容"

提示字体颜色 android:textColorHint

输入字体相关属性与TextView相同 text,textSize,textColor,textStyle(字体的样式 "italic"斜体 bold加粗 normal正常 三种选项)

(2)光标相关

可以设置光标的宽高颜色信息

android:textCursorDrawable="@drawable/film_search_contact_cursor_style"

在drawable里面这样写



    
    
    
     
    
    

这里有个坑,在安卓4某些手机上设置光标的高度会发现光标不显示,我的解决方法是把高度设置取消,只设置了宽度就没事了,它会自动设置高度。

(3)吊起的键盘相关 当点击EditText的文字输入框的时候就会自动吊起系统自带键盘。

android:imeOptions="actionSearch"

actionSearch代表软键盘的搜索按钮,其实就是个搜索字样,也有其他的属性,比如actionNext,此时搜索按钮的位置就变成了一个箭头

(4)监听点击事件

通常一次点击会吊起键盘,而我们同时还想处理点击事件。

一个点击事件是本身文本框的,直接使用普通的onClickListener监听事件就可以了。

还有一个点击事件是键盘那个搜索框的,当然会根据设定不同有其他文本提示,比如完成,或者箭头等,实现TextView.OnEditorActionListener接口即可

@Override
    public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
        if (i == EditorInfo.IME_ACTION_SEARCH) {
            Toast.makeText(this, "onEditorAction make use",Toast.LENGTH_SHORT).show();
        }
        return false;
    }

还有监听文字输入状况的监听事件,这个可以根据情况进行删除按钮的隐藏显示等相关操作

 mInputText.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) {
               deleteIcon.setVisibility(View.VISIBLE);
            }

            @Override
            public void afterTextChanged(Editable s) {
                if (mInputText != null && TextUtils.isEmpty(mInputText.getText().toString())) {
                   deleteIcon.setVisibility(View.GONE);
                }
            }
        });

你可能感兴趣的:(android)