Search code examples
androidcurrency

Display rupee symbol via strings xml not working


I using the following string entry in strings.xml file to display rupee symbol.

<string name="current_amount">"Balance: &#x20B9;%.2f"</string>

It displays a square rather than the actual symbol on Android 2.2.

Please help.

PS: I am testing it on an emulator for Android 2.2, I don't have a 2.2 device.


Solution


  • [EDIT] Working soultion for Android 2.2

    Ok here's how you can get it to work. You'll have to download the font Rupee_Foradian.ttf from here and put it in the assets folder.

    Then, place this line in strings.xml file

    <string name="rs">`</string>
    

    And finally set the Typeface using this code:

    TextView t = (TextView) findViewById(R.id.text);
    Typeface face = Typeface.createFromAsset(getAssets(), "Rupee_Foradian.ttf");
    t.setTypeface(face);
    t.setText("Balance " + getResources().getString(R.string.rs));
    



    enter image description here


    [Original] Doesn't work on Android 2.2

    Put this line in your strings.xml file

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

    In your code, for example, if you're assigning it to a TextView do this:

    TextView text = (TextView) findViewById(R.id.text);
    text.setText("Balance " + getResources().getString(R.string.rs) + VALUE);