【问题标题】:Make only parts of text editable in Android在 Android 中仅使部分文本可编辑
【发布时间】:2017-07-30 01:24:34
【问题描述】:

对于我的 Android 应用程序,我希望屏幕上有一个看起来像这样的句子(TextViewEditText 或其他东西):

红色的___________跳过了那只懒狗。

用户可以点击下划线并自己完成句子。我可以通过用EditText 表示整个句子来实现这一点,但我希望字符串The redjumped over the lazy dog. 是不可编辑的。

我有很多类似的句子应该完成,因此将字符串中不可编辑的部分硬编码为图像或其他内容是行不通的。我该怎么做?

【问题讨论】:

  • 您可以将编辑视图放在文本视图之间。
  • @Popeye 如何确保 TextViews 和 EditView 针对不同长度和行数的句子正确排列?
  • 你可以像这样使用动态绘制stackoverflow.com/questions/19788386/…
  • @Popeye 不幸的是,这不是一个有用的解决方案,因为句子有不同的长度并且可以占用多行,所以这样的解决方案不够灵活。我很惊讶这个简单的任务对 Android 来说有多么困难。
  • 我仍然相信相对布局会起作用,无论段落中的行数如何,都可以将编辑视图保留在文本视图中。 stackoverflow.com/q/11577570/4002680

标签: android android-edittext textview


【解决方案1】:

尝试使用addTextChangedListener。使用afterTextChanged,您可以通过在编辑后将其改回来控制不可编辑的文本部分。

【讨论】:

  • 这也许是一个有效的解决方案,但它的设计真的很糟糕。我不希望用户能够更改句子中不可编辑的部分,无论以后将句子改回来。
猜你喜欢
  • 2011-07-23
  • 2020-09-08
  • 1970-01-01
  • 2017-03-10
  • 1970-01-01
  • 2011-11-20
  • 1970-01-01
  • 2017-07-04
  • 1970-01-01
相关资源
最近更新 更多