目录
  • 1、隐藏android中EditText自带的的下划线
  • 2、让软键盘出现搜索按钮
  • 3、多行EditText的时候会出现光标在中间的问题:
  • 4、修改EditText的光标颜色
  • 5、通过监听OnFocusChangeListener判断EditText的焦点与否
  • 6、通过属性android:ellipsize来对文本内容的呈现做说明
  • 7、通过属性android:digits来规定只能输入的值
  • 8、规定只能输入中文

1、隐藏android中EditText自带的的下划线

 android:background="@null" 或android:background="@/drawable/bg_edittext_norma.xml"

bg_edittext_norma.xml

 <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <!--商品描述的可编辑框--> <solid android:color="#FFFFFF" /> <corners android:radius="10dip"/> <stroke android:width="1dip" android:color="#BDC7D8" /> </shape>

 <EditText style="?android:attr/textViewStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@null" android:hint="输入用户名" android:paddingBottom="5dip" android:paddingTop="5dip" />

2、让软键盘出现搜索按钮

  • 核心代码块1:

这俩个一定要设置,要不然软键盘不会出现搜索

 android:imeOptions="actionSearch" android:singleLine="true"

  • 核心代码块2:

Activity或者Fragment 要实现TextView.OnEditorActionListener接口

 public class DrugCatalogueInquiryFragment extends GeneralSocialFragment implements TextView.OnEditorActionListener { private ClearEditText etDrugName; etDrugName = xFindViewById(R.id.et_drug_name); etDrugName.setOnEditorActionListener(this); @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { doWhichOperation(actionId); return true; } private void doWhichOperation(int actionId) { switch (actionId) { case EditorInfo.IME_ACTION_SEARCH: //隐藏项目中弹框 hideSoftInputMethod(); //项目中个性化操作 getEditTextValue(); pageno = 1; getMedicineListInfoForApp(name,firstWord,type,level,pageno); break; default: break; } } }

3、多行EditText的时候会出现光标在中间的问题:

关键代码

 android:gravity="left"

 <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:minLines="5" android:background="#ffffff" android:paddingLeft="5dp" android:gravity="left" />

像这种。这是什么原因造成的呢?用来EdittText默认是gravity是center.就是从中间对齐。我们把他改成left啊top啊就OK了。

4、修改EditText的光标颜色

在使用EditText的XML 文件中加入一个属性:

 android:textCursorDrawable="@null" //或者 android:textCursorDrawable = "#fff000"

这个属性是用来控制光标颜色的,"@null" 是作用是让光标颜色和text color一样,当然也可以修改成你自己的颜色。

5、通过监听OnFocusChangeListener判断EditText的焦点与否

 private void initListener(){ etDrugName.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View view, boolean b) { if (b){ TypeUtils.getInstance( getActivity() ).hideKeyboardView(); } } }); etDrugNameOfInitial.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View view, boolean b) { if (b){ TypeUtils.getInstance( getActivity() ).hideKeyboardView(); } } }); }

6、通过属性android:ellipsize来对文本内容的呈现做说明

 android:ellipsize="end"

7、通过属性android:digits来规定只能输入的值

 android:digits="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"

8、规定只能输入中文

 / * 通过使用Android源码中的InputFilter接口 */ InputFilter filter = new InputFilter() { public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { for (int i = start; i < end; i++) { if (!isChinese(source.charAt(i))) { return ""; } } return null; } }; / * 判定输入汉字 * * @param c * @return */ public static boolean isChinese(char c) { Character.UnicodeBlock ub = Character.UnicodeBlock.of(c); if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) { return true; } return false; }

到这里就结束啦。

以上就是Android使用EditText小技巧汇总的详细内容,更多关于Android使用EditText的资料请关注本网站其它相关文章!

您可能感兴趣的文章:

  • Android开发EditText实现密码显示隐藏
  • Android开发EditText禁止输入监听及InputFilter字符过滤
  • Android中EditText光标的显示与隐藏方法
  • Android TextWatcher三个回调以及监听EditText的输入案例详解
  • Android EditText输入框实现下拉且保存最近5个历史记录思路详解
  • Android EditText随输入法一起移动并悬浮在输入法之上的示例代码
  • Android EditText每4位自动添加空格效果
  • Android编辑框EditText与焦点变更监视器及文本变化监视器实现流程详解