Degrees symbol (as in Degrees Celsius/Fahrenheit) in a TextView

Is there a way to include the small circular degrees symbol to a TextView? This would be for temperature readings, as in degrees Celsius or Fahrenheit. I'm wondering if anyone has done this programmatically before.

55989 次浏览

There is a Unicode symbol for Celsius degrees that you can use in Java: \u2103. For Fahrenheit you can use \u2109.

I have confirmed this works on Android Nexus S running Android version 2.3.6.

Example code:

temperatureValue.setText((result) + " \u2109");

If Someone wants just the little circle sign without the letter, he can use:

\u00B0

Source: Unicode Character 'DEGREE SIGN'

in Activity for Celsius

tempValue.setText((resultemp) + " \u2103");

for Fahrenheit

tempValue.setText((resultemp) + " \u2109");

for Kelvin

tempValue.setText((resultemp) + " \u212A");

for Romer

tempValue.setText((resultemp) + " \u00B0R");

In xml.file for Celsius

android:text="\u2103"

for Fahrenheit

android:text="\u2109"

for Kelvin

android:text="\u212A"

for Romer

android:text="\u00B0R"

If you need only the degree (o) circle symbol you can copy below code.

char tmp = 0x00B0;
temperature.setText("60"+tmp);

Hope it helps :)

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="\u00B0"/>

If sign is not visible on android studio layout preview, you need to add

xmlns:tools="http://schemas.android.com/tools"

to the root xml element.

For displaying degree symbol in a TextView, you can use from the "& #176;" without any distance. As you can see an example below:

`android:text="10& #176;c" So this command will show you as a 10°c on the screen android.

For showing in XML, if you want to show android:text="32°C" you can use:

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="32&#xb0;C"
android:id="@+id/myTV"></TextView>

To do it programmatically, you can use:

myTV.setText("32" + (char) 0x00B0+"C");