【问题标题】:How to assign a single char to a TextView如何将单个字符分配给 TextView
【发布时间】:2012-11-10 04:37:42
【问题描述】:

我正在尝试将单个字符分配给 Android Java 中的 TextView。
使用字符串有效:

textView.setText("X");

但是在运行时使用 char 会中止:

textView.setText('X');  

和:

char Key5 = 'X';  
textView.setText(Key5);

使用字符也会在运行时中止:

Character Key5 = 'X';  
textView.setText(Key5);

将字符类型转换为字符串确实有效:

Character Key5 = 'X';  
textView.setText(Key5.toString());

如何将纯字符变量分配给 TextView?

【问题讨论】:

标签: java android


【解决方案1】:

简答:

你不能,你必须使用 CharSequence。 (感谢Sam

长答案:

问题是TextView.setText 没有重载以将字符作为唯一参数。它只能采用 CharSequence。

来自CharSequence 文档

该接口表示一组有序的字符,并定义了探测它们的方法。

String 之所以有效,是因为它实现了 CharSequence 接口。拥有一个只包含一个字符的 CharSequence 是没有意义的

【讨论】:

  • 我认为这是对以下问题的更好回答:“如何将纯字符变量分配给 TextView?” (即你不能,你必须使用 CharSequence。)
【解决方案2】:

您可以使用 String.valueOf(char) 方法将字符“转换”为字符串:

char key = 'X';
textView.setText(String.valueOf(key));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-08
    • 2015-08-15
    • 1970-01-01
    相关资源
    最近更新 更多