禁用 EditText 可编辑性和焦点(如 TextView)

2023-11-26

有没有办法制作EditText行为如TextView在 Android 中(首选 XML)? 我已经尝试过以下方法:

 android:editable="false"
 android:focusable="false"
 android:focusableInTouchMode="false"
 android:cursorVisible="false"
 android:longClickable="false"

这有效,但我仍然可以触摸EditText获得焦点(橙色边框),通过一旦我移开手指就失去焦点。 我不知道什么focusableInTouchMode确实如此,但当我继续触摸时它并没有消除焦点。

我不使用白色背景的原因TextView相反的是TextView背景很丑。EditText的背景有圆角和阴影效果。

提前致谢。


EditText and TextView非常相似。我看到的唯一区别是硬编码的编辑文本.java是将可编辑的默认值设置为 true,这是您手动设置的。除此之外,EditText style is:

<style name="Widget.EditText">
    <item name="android:focusable">true</item>
    <item name="android:focusableInTouchMode">true</item>
    <item name="android:clickable">true</item>
    <item name="android:background">@android:drawable/edit_text</item>
    <item name="android:textAppearance">?android:attr/textAppearanceMediumInverse</item>
    <item name="android:textColor">@android:color/primary_text_light</item>
    <item name="android:gravity">center_vertical</item>
</style>

and TextView is:

<style name="Widget.TextView">
    <item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
</style>

我的猜测是@android:drawable/edit_text是橙色盒子的来源。的确,它包含:

<item android:state_pressed="true" android:drawable="@drawable/textfield_pressed"/>

最简单的方法可能是将其背景设置为默认背景:

android:background="@android:drawable/textfield_default"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

禁用 EditText 可编辑性和焦点(如 TextView) 的相关文章

  • 我在布局上看不到任何 FirebaseRecyclerAdapter 项目

    我试图将数据从 Firebase 数据库检索到我的布局 但我看不到任何项目FirebaseRecyclerAdapter在布局中 请帮忙 我按照一个教程展示了如何做到这一点 当我运行应用程序时 我没有看到任何项目 但我可以滚动 public
  • Android短音的正确播放方法?

    我正在创建一个应用程序 屏幕上将有多个图像 这些图像将是按钮 点击时会播放短促的声音 我对此进行了研究 只能找到我当前用来播放声音的方法 这似乎根本没有响应 我希望声音能够快速播放并且能够响应多次快速点击 我不确定这在 Android 中是
  • 如何在android中显示保存在sdcard文件夹中的图像[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 当我正在显
  • AdapterContextMenuInfo 始终为 null

    我尝试通过 android 开发文档中的书来做到这一点 this didn t create a menu i don t know why registerForContextMenu getListView setListAdapter
  • 如何正确释放Android MediaPlayer

    我正在尝试向我的 Android 应用程序添加一个按钮 当点击该按钮时它会播放 MP3 我已经让它工作了 但没有办法释放 mediaPlayer 对象 因此即使在我离开活动后它仍然会继续播放 如果我在react 方法之外初始化MediaPl
  • 将现有 VARCHAR 列与 Room 结合使用

    我正在尝试将现有的数据库与 Android Room 一起使用 但是 我的一个表有一个 VARCHAR 列 Room 似乎只支持 TEXT 不支持 VARCHAR 而且 sqlite 不允许修改列类型 那么 有没有办法使用Room中现有的带
  • 通过 WhatsApp 发送消息

    由于我发现了一些较旧的帖子 表明 Whatsapp 不支持此功能 我想知道是否发生了变化 以及是否有办法打开与我通过意图发送的号码进行 Whatsapp 聊天 UPDATE请参阅https faq whatsapp com en andro
  • 自定义首选项中的android首选项水平分隔线?

    我创建了自己的自定义首选项对象来扩展首选项 我创建它们只是因为这些自定义数据类型没有首选项 一切正常 但我的自定义首选项没有相同的外观 因为它们缺少系统首选项对象具有的水平分隔线 我已经查找了创建水平分隔线的代码 但我找不到它是在哪里完成的
  • 如何重定向到 instagram://user?username={username}

    我的 html 页面上有这个链接 可以在特定用户上打开 Instagram 应用程序 a href Link to Instagram Profile a 我一直在寻找自动运行 url instagram user username USE
  • java.lang.IllegalStateException:应用程序 PagerAdapter 更改了适配器的内容,而没有调用 PagerAdapter#notifyDataSetChanged android

    我正在尝试使用静态类将值传递给视图 而不是使用意图 因为我必须传递大量数据 有时我会收到此错误 但无法找出主要原因是什么 Error java lang IllegalStateException The application s Pag
  • ExoPlayer2 - 如何使 HTTP 301 重定向工作?

    我开始使用 ExoPlayer 来传输一些音频 一切都很顺利 直到我遇到一个带有 301 永久移动 重定向的 URL ExoPlayer2 默认情况下不处理该问题 我已经看过这个线程 https github com google ExoP
  • Android 深度链接至 Instagram 应用

    Instagram 已经发布了 iOS 深层链接的 url 方案 但尚未为 Android 创建文档 有没有办法深入链接到 Android 上的 Instagram 应用程序 以转到 Instagram 应用程序中的特定位置 例如 Inst
  • 当 OnFocusChangeListener 应用于包装的 EditText 时,TextInputLayout 没有动画

    不能比标题说得更清楚了 我有一个由文本输入布局包裹的 EditText 我试图在 EditText 失去焦点时触发一个事件 但是 一旦应用了事件侦听器 TextInputLayout 就不再对文本进行动画处理 它只是位于 editText
  • 从 BroadcastReceiver 类调用活动方法

    我知道我可以做一个内部接收器类来调用接收器中的任何方法 但我的主要活动太大了 要做的事情也很多 因此 我需要一个扩展广播接收器的类 但它不是内部类 并且可以从我的主要活动中调用一种方法 我不知道是否可能 但我的活动是家庭活动和 single
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • okhttp 获取失败响应

    我已经在我的 android 客户端中实现了 okhttp 来进行网络调用 当我收到失败响应时 我会收到失败代码以及与该代码相关的文本作为消息 但我没有收到服务器发送给我的自定义失败响应 在我实施的代码中的失败响应中 我收到的消息只是 错误
  • OnLongClickListener 不工作

    我有一个ImageView 我需要使用onLongClickListener对于图像视图 当我使用这段代码时 什么也没有发生 Code gallery Gallery findViewById R id gall1 gallery setA
  • Python - 如何确定解析的 XML 元素的层次结构级别?

    我正在尝试使用 Python 解析 XML 文件中具有特定标记的元素并生成输出 excel 文档 该文档将包含元素并保留其层次结构 我的问题是我无法弄清楚每个元素 解析器在其上迭代 的嵌套深度 XML 示例摘录 3 个元素 它们可以任意嵌套
  • 问题:为什么React Native Video不能全屏播放视频?

    我正在react native 0 57 7 中为android和ios创建一个应用程序并使用反应本机视频 https github com react native community react native video播放上传到的视频
  • 我的应用程序中的后退按钮出现问题[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想在手机关闭时清除共享首选项值 你

随机推荐

  • Clojure - 埃拉托斯特尼的尾递归筛

    我在 Clojure 中实现了埃拉托斯特尼筛法 defn sieve n loop last tried 2 sift range 2 inc n if or nil last tried gt last tried n sift let
  • Readlock 和 Writelock 会导致 writer 饥饿吗?

    在解决读者写入问题时 我尝试使用ReentrantReadWriteLock 我知道所有读者可以同时获取读锁 但是写锁必须等待所有读锁被释放 如果我们有很多读者 这是否会导致作者处于饥饿状态 ReentrantReadWriteLock 可
  • Eclipse 格式化程序可以配置为在括号之间正确缩进多行吗?

    可以配置 或扩展 Eclipse 格式化程序和代码清理来添加我在以下示例中期望的缩进 public static void main String args String numbers new String one two three f
  • Android EditText 内存泄漏

    很多人注意到活动中的 EditText 即使在活动完成后也持有对活动的强引用 需要明确的是 此 EditText 位于布局内并已膨胀 因此没有设置侦听器 这仅发生在某些设备上 例如三星 Galaxy S4 Android 4 2 2 等 许
  • 通过 PhantomJS 调用时找不到模块“casper”

    我在 C xampp htdocs phantom 中安装了 PhantomJS 并且在该文件夹 C xampp htdocs casper 中安装了 CasperJS 当我尝试使用 casper 站点上运行这些示例代码时phantomjs
  • 如何检查存储函数中INSERT是否顺利?

    我正在创建一个存储函数 它应该将新行插入到表中 该表中还有一个独特的列 我如何检查一切是否顺利并且行确实已插入 如何准确检查是否找到了这个唯一的列 例如 尝试添加重复值 您可以检查 LAST INSERT ID 函数和 INSERT IGN
  • 在 SQL 中将 IN 更改为 EXISTS

    我有以下查询 select A B from table1 where A in select c from table 2 但是 现在我需要更改此查询并使用exists代替in 并且应该给出相同的结果 我的表格如下所示 table1 ta
  • 如何将使用 enquo() 创建的动态变量名称传递给 dplyr 的 mutate 进行评估?

    我正在创建一个工作流程 其中包含相同的管道步骤 重命名 选择依据 然后使用我在管道之前提供的名称来更改所有内容 我已经成功使用enquo and bang bang 重命名为我想要的字符串 然后再次选择它 但是当我到达变异步骤时 它要么重复
  • 如何让 Valgrind 显示行错误?

    如何让 Valgrind 准确显示错误发生的位置 我编译了我的程序 通过 PuTTy 在 Linux 终端上的 Windows 机器上 添加了 g 调试选项 当我运行 Valgrind 时 我得到泄漏和堆摘要 并且我肯定丢失了内存 但我从未
  • 为什么 Perl open() 文档使用两种不同的 FILEHANDLE 样式?

    The open 函数的文档显示语法open as 打开文件句柄 EXPR 打开文件句柄 模式 表达式 打开文件句柄 模式 表达式 列表 打开文件句柄 模式 参考 打开文件句柄 在下面的示例中 有一些地方使用普通的 前缀变量作为文件句柄 o
  • 如何将 SQL 子查询转换为联接

    我有两个具有 1 n 关系的表 内容 和 版本内容数据 例如 文章实体和该文章创建的所有版本 我想创建一个显示每个 内容 的顶级版本的视图 我使用这个查询 带有一个简单的子查询 SELECT t1 id t1 title t1 conten
  • IE 的默认 CSS 值 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我正在开发一个 Web 应用程序 但它对 Firefox 不太友好 设计是在我加入公司之前 2 年完成的 我遇到了一些 CSS 问题 并且无法使用
  • 如何在 d3.js 中查找点是否在多边形内部

    我知道有手动方法可以做到这一点 请参阅多边形中的点 但是在 d3 js 中是否有一种本地方法可以确定一个点是否在多边形内部 Update 这现在是一部分d3 多边形 d3 polygonContains polygon point
  • 什么会在 C 中产生词法错误?

    除了不关闭评论之外 什么构成 C 中的词法错误 这里有一些 abc
  • 检查用户名可用性

    我有一个用户登录表单 我想在 user field 失去焦点之后立即检查数据库中是否有用户名 我可以使用 javascript 覆盖表单上的此事件 但无法从 javascipt 代码发送 Ruby AJAX 请求 有没有什么方法可以检查用户
  • 如何从数组动态创建 JavaScript 变量?

    假设我有一个变量名称数组 var varNames new Array name1 name2 name3 我如何创建var name1 var name2 and var name3只需循环遍历varNames array 这将创建全局变
  • 有什么命令可以让我了解 Hbase 中表的大小吗?

    有什么命令可以让我了解 Hbase 中表的大小吗 我使用 Hbase 保存来自 Nutch 的爬网数据 如果您在 hadoop 上运行 hbase 可以使用以下命令 hadoop fs du path path 必须替换为hbase roo
  • 如何使用正确的参数在 C 中调用 execl() ?

    我有 vlc 重现视频的程序 如果我在 shell 中输入 home vlc home 我的电影 我想看的电影 mkv 它打开并再现电影 但是 当我运行以下程序时 include
  • Visual Studio 2010“分配给局部变量”功能?

    我很喜欢 Eclipse 中的 分配给字段 功能 基本上 当我有 getString and I type Ctrl 2 Eclipse converts this into String getString getString 这在 VS
  • 禁用 EditText 可编辑性和焦点(如 TextView)

    有没有办法制作EditText行为如TextView在 Android 中 首选 XML 我已经尝试过以下方法 android editable false android focusable false android focusable