返回顶部
首页 > 资讯 > 精选 >Android怎么禁止向EditText控件中输入内容
  • 218
分享到

Android怎么禁止向EditText控件中输入内容

androidedittext控件 2023-05-30 21:05:32 218人浏览 独家记忆
摘要

这篇文章主要介绍了Android怎么禁止向EditText控件中输入内容,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。前言在Android开发中经常会遇到EditText控件

这篇文章主要介绍了Android怎么禁止向EditText控件中输入内容,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

前言

在Android开发中经常会遇到EditText控件,而在App开发过程中、遇到了这样一个问题、那就是Android EditText控件如何禁止往里面输入内容?

最开始找到修改版解决方法、但是当想输入的时候就有问题了、可以参考一下、但不建议这样写

EditText editText = (EditText) findViewById(R.id.editText1);editText.seTKEyListener(null);

看到这个问题大家可能有点奇怪了、EditText的功能不就是往上面写入内容吗?再者、如果真要禁止输入文本、在布局文件中添加

android:focusable="false"

或者在代码中使用、不就Ok了?

editText.setFocusable(false)

项目需求是这样的、在EditText后面跟一个CheckBox、勾选CheckBox可以输入、否则不可以输入、另外也有这种需求、比如已经被setText()内容、则需要禁止输入、防止它被修改、

如果没有显示内容、则将EditText设置为可输入状态

经过测试验证:setFocusable方法的效果只有第一次使用时有效、也就是说若在布局文件里面设置:

android:focusable="false"

即使你在代码中设置此控件属性:editText.setFocusable(true);也不能对它进行编辑、即setFocusable方案不可行、经过摸索得出可行方案利用setInputType来实现、代码如下

editText.setInputType(InputType.TYPE_NULL);//来禁止手机软键盘editText.setInputType(InputType.TYPE_CLASS_TEXT);//来开启软键盘

应用程序默认为开启状态、特别注意:这种方法也只能禁止软键盘、若手机自带硬键盘、此方案失效

public class EditTextTest extends Activity {    EditText editText;  boolean flag = true;   public void onCreate(Bundle savedInstanceState)  {   super.onCreate(savedInstanceState);   setContentView(R.layout.main);   editText = (EditText) findViewById(R.id.editText1);   Button btn = (Button) findViewById(R.id.button1);   btn.setOnClickListener(new OnClickListener()   {    public void onClick(View v)    {     if (flag==true)     {      System.out.println("开启软键盘");       editText.setInputType(InputType.TYPE_CLASS_TEXT);      flag = false;           }else     {      System.out.println("禁止软键盘");       editText.setInputType(InputType.TYPE_NULL);      flag = true;     }    }   });  } }

感谢你能够认真阅读完这篇文章,希望小编分享的“Android怎么禁止向EditText控件中输入内容”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: Android怎么禁止向EditText控件中输入内容

本文链接: https://lsjlt.com/news/221155.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作