«& минус» вместо «-» в TextView, который устанавливает текст из JSON

У меня есть приложение погоды, которое получает информацию о погоде json отсюда:

http://icomms.ru/inf/meteo.php/?tid=44

В значении "temp" есть минус (например: "temp":"−16"), и когда я получаю значение из json с retrofit2 и показываю его в текстовом виде, вместо этого отображается −16-16

«& минус» вместо «-» в TextView, который устанавливает текст из JSON

Как я могу показать -16 вместо −16?

Фрагмент из RecyclerViewAdapter (я использую его для отображения информации о погоде в течение нескольких дней), где я устанавливаю текст в текстовое представление

@Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        Meteo meteo = data.get(position);
        holder.date.setText(meteo.date);
        holder.tod.setText(meteo.tod);
        holder.pressure.setText(meteo.pressure);

        // THIS IS TEMPERATURE SETTING TEXT LINE
        holder.temp.setText(meteo.temp);

        holder.humidity.setText(meteo.humidity);
        holder.wind.setText(meteo.wind);
        holder.cloud.setText(meteo.cloud);
}

Класс данных о погоде:

public class Meteo {
    public String date;
    public String tod;
    public String pressure;
    public String temp;
    public String humidity;
    public String wind;
    public String cloud;
}

Текст ответа:

    Retrofit retrofit = new Retrofit.Builder()
            .baseUrl(APIService.HOST)
            .addConverterFactory(GsonConverterFactory
                    .create())
            .build();

    APIService apiService = retrofit.create(APIService.class);

    Call<List<Meteo>> call = apiService.getMeteo(44);

    call.enqueue(new Callback<List<Meteo>>() {
        @Override
        public void onResponse(Call<List<Meteo>> call, Response<List<Meteo>> response) {
            MeteoAdapter adapter = new MeteoAdapter(response.body());
            // Method show just shows list of weather data
            getViewState().show(adapter);
        }

        @Override
        public void onFailure(Call<List<Meteo>> call, Throwable t) {
            Log.d("MyLog", "WRONG");
        }
    });
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
0
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуй это. Я использую его для форматирования html-тегов в текстовом представлении:

String s = Html.fromHtml("&minus;16");
tv.setText(s);

Обоснование: он задает текст как составной объект, а не как строку.

Примечание. Невозможно проверить это в настоящее время, извините, если это не работает.

Другие вопросы по теме