【问题标题】:Disable Word Wrap in an Android Multi-Line TextView在 Android 多行 TextView 中禁用自动换行
【发布时间】:2011-02-28 18:48:47
【问题描述】:

我正在开发具有高级滑动功能的月视图(需要加载当前、下一个和上一个以使每个视图都粘在您的手指上),这意味着我有很多视图,这会导致事情变得有点慢。

            |          | #<-- screen bounderies
 ' previous ' current  '   next   ' #<-- three months loaded
    ' previous ' current  '   next   ' #<-- three months when the user drags their finger

因此,我想在单个 TextView 中表示多个事件。当用户在月视图(小屏幕)上点击某一天时,它将打开该天的日视图。

在月视图中的每一天(通常一天占屏幕宽度的七分之一,垂直方向略小于七分之一)我想避免这种情况

|    31|
|10a:  |
| Testi|
|ng    |
|11a:  |

我想要

|    31|
|10a:  |
| Testi|
|11a:  |
| Anoth|

注意ng 被截断而不是换行到下一行。这就是我要找的。​​p>

【问题讨论】:

标签: android textview multiline nowrap


【解决方案1】:

在 Java 中:

setHorizontallyScrolling(boolean) 

理论上,android:scrollHorizo​​ntally 应该在 XML 中做同样的事情,但在 android 中有一个错误会阻止它工作。

【讨论】:

  • 这会停止包装,但我还必须将 setMovementMethod(new ScrollingMovementMethod()) 添加到 TextView 以使水平滚动工作。并在布局文件中使用android:scrollbars="horizo​​ntal"来显示滚动条。
【解决方案2】:

android:singleLine-----这是用于xml的

setTransformationMethod(TransformationMethod)-----这是给java的

将文本限制为一条水平滚动的行,而不是让它换成多行,并在您按下回车键时前进焦点而不是插入换行符。

我不确定这是否可行,但是当我希望 TextView 不包含在 ListView 中时,它对我有用

【讨论】:

  • 对不起,这个答案看起来不够。上面有 5 行的框是一个文本视图。它需要支持换行,同时仍然禁止自动换行。
  • 这根本不是在回答问题。我不明白为什么这会受到如此多的支持。
【解决方案3】:

目前对于 XML 的最佳答案是

android:maxLines="1"

因为 android:singleLine 现在已经贬值了

【讨论】:

    【解决方案4】:

    在java代码中

    textView1.setMovementMethod(new ScrollingMovementMethod());
    

    在 XML 文件中

    android:minLines="5"
    

    成功了。

    【讨论】:

      猜你喜欢
      • 2021-08-27
      • 2012-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-30
      • 1970-01-01
      • 2011-10-04
      • 1970-01-01
      相关资源
      最近更新 更多