【问题标题】:Can't get rupee symbol to show correctly from strings.xml无法从 strings.xml 中正确显示卢比符号
【发布时间】:2021-10-07 05:29:33
【问题描述】:

所以这很好用:

strFoo = "\u20B9" + strBar

但这不是

strFoo = R.string.rupee_symbol.toString() + strBar  //.toString() is required

//R.string.rupee_symbol.toString() evaluates to some random number 2131755148... which I believe is a character array... 

字符串.xml

<string name="rupee_symbol">\u20B9 </string>

我不明白它为什么会这样,它看起来像一样的东西......!

【问题讨论】:

    标签: android string kotlin symbols


    【解决方案1】:

    您不应该将字符串与字符串资源连接,您可以使用占位符:

    <string name="rupee_symbol">\u20B9%s</string>
    

    并使用:

    strFoo = resources.getString(R.string.rupee_symbol, strBar)
    

    【讨论】:

    • 是什么意思?如何使用占位符?
    • @whoadityanawandar.. 使用符号%s,表示稍后将在代码中填充此占位符;并使用getString()的两个参数版本填充strBar
    • @whoadityanawandar,我误用了$ 而不是%,我现在修好了
    【解决方案2】:

    使用getString(R.string.rupee_symbol) 代替R.string.rupee_symbol.toString()

    For example- 
    String strBar = String.valueOf(100);
        String strFoo = getString(R.string.rupee_symbol)+strBar;
        textView.setText( strFoo);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-12
      相关资源
      最近更新 更多