76

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.

Peter O.
  • 30,765
  • 14
  • 76
  • 91
Aurora
  • 4,364
  • 3
  • 37
  • 44

7 Answers7

139

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");
mr2ert
  • 5,046
  • 1
  • 20
  • 32
Luis Miguel Serrano
  • 4,949
  • 2
  • 39
  • 41
33

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

\u00B0

Source: Unicode Character 'DEGREE SIGN'

yshahak
  • 4,924
  • 1
  • 29
  • 36
19

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"
Phadadev
  • 348
  • 2
  • 8
1
<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.

Vasil Valchev
  • 5,439
  • 2
  • 33
  • 39
0

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

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

Hope it helps :)

Nihas Nizar
  • 592
  • 7
  • 15
0

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.

0

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");