java - Android 按钮文本和 HTML 上标和下标

标签 java android html xml

我正在尝试将上标和下标文本插入到 android 按钮文本中。 我尝试在 strings.xml 文件中提供以下内容

<string name="NAME"><![CDATA[<sup><small>-1</small></sup>]]></string>

在 MainActivity.java 文件中,

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment()).commit();
    }

    Button NAME = (Button) findViewById(R.id.button10);
    NAME.setText(Html.fromHtml(getResources().getString(R.string.NAME)));
}

但我无法成功。

查询:

  • 有没有办法在“strings.xml”文件本身中指定它,而无需在代码中使用 setText ?

最佳答案

问题: 您获取的值错误。

解决方案: 使用 R.string.NAME 代替 R.string.iHyperbolic

您的NAME包含html字符串,而不是iHyperbolic

Is there any way to specify it in "strings.xml" file itself without using setText in code ?

据我所知,在 Html 类处理完 html 字符串后,您必须使用 setText() 来设置它。因为 Html 类将 HTML 字符串处理为可显示的样式文本。如果您希望在小部件上显示此 Html 样式文本,则必须使用 setText()。

关于java - Android 按钮文本和 HTML 上标和下标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24483573/

相关文章:

java - h :inputHidden? 中的 JSF 2.0 对象值

Android - 无法让 OnTouchEvent 在 Activity 中触发 - 使用 MonoDroid(需要来自 OnTouch 的 MotionEvent)

android - Firebase 和 Fabric 集成 : No detectable Fabric Event in Firebase

android - Cordova 构建返回缺少的 plugin.xml

CSS不需要的空白

java - 如何在Android Studio中运行jar文件?

java - 数据存储区不显示 false boolean 值

css - 在一个 div 容器中,两个 Canvas 层叠在一起?

html - 使用媒体查询——我要定位哪些标签?

java - 使用 Scala 反射返回类型化函数