Хранить шестнадцатеричное значение (0x45E213) в целочисленном

В моем приложении я использовал конвертер для создания из трех значений> RGB-цветов значения Hex. Я использую это, чтобы установить свой фон градиента в моем приложении во время выполнения.

Теперь это следующая проблема. Результатом конвертера является (String) #45E213 , и это не может быть сохранено в целое число. Но когда вы создаете целое число,

  int hex = 0x45E213; 

Он работает правильно, и это не дает ошибок.

Теперь я знал об этом, я заменил # на 0x и попробовал преобразовать его из String в Integer.

  int hexToInt = new Integer("0x45E213").intValue(); 

Но теперь я получаю numberFormatException , потому что при преобразовании он не согласен с символом E ? Как я могу это решить? Поскольку я действительно нуждаюсь в нем, поскольку Integer или Java / Eclipse не будут использовать его в своем методе.

http://docs.oracle.com/javase/6/docs/api/java/lang/Integer.html

Конструктор Integer со строкой ведет себя так же, как parseInt с radix 10. Предположительно, вы хотите String.parseInt с radix 16.

 String.parseInt("45E213", 16) 

Или отрезать 0x

 Integer.parseInt("0x45E213".substring(2), 16); 

или

 Integer.parseInt("0x45E213".replace("0x",""), 16); 

Здесь может быть полезен менее известный Integer.decode (String). Обратите внимание, что это также приведет к тому, что ведущие нули будут восьмыми, что вам может и не нужно, но если вы после чего-то дешево и весело …

 int withHash = Integer.decode("#45E213"); System.out.println(Integer.toHexString(withHash)); int withZeroX = Integer.decode("0x45E213"); System.out.println(Integer.toHexString(withZeroX)); 

Вывод

 45e213 45e213 

Этот метод принимает вашу строку, вы можете использовать Color.parseColor(String) но вам нужно заменить префикс 0x на #

Intereting Posts
Как определить, какой ресурс растрового изображения был загружен (ldpi, mdpi или hdpi)? Как установить IME по умолчанию для портирования Android? Как получить телефонные контакты в Android Городской дирижабль падает при взлете. Исключение незаконного аргумента Android – Как загрузить изображение и использовать его во время выполнения? Уведомления API REST Google Диска, не работающие для изменений в папке приложения Камера любого эмулятора не работает Как удалить анимацию значков для отображения нижней навигации в android Несколько уведомлений и только показать первый Android Как добавить пользовательское состояние кнопки Что противоположно android.R.attr.state_checked? Полноразмерный счетчик в ActionBar Как решить задание setMyLocationEnabled? Выполнение нескольких операторов с помощью SQLiteDatabase.execSQL Trigger.IO in-app платежи дублируют обратные вызовы тот же orderid с другой подписью