десятичный тип ввода и проблема со знаком

Я использовал тип ввода

android:inputType="numberDecimal|numberSigned"

Я должен проверить, равен ли тип ввода numberdecimal OR numbersigned, чтобы не выполнять какой-то набор кода.

Я нашел отображение

//numberDecimal to InputType.TYPE_NUMBER_FLAG_DECIMAL (int 8192)
//numberSigned to     InputType.TYPE_NUMBER_FLAG_SIGNED (int 4096)

Логика кода такая

if (inputType != InputType.TYPE_NUMBER_FLAG_DECIMAL
                        ||  inputType!=InputType.TYPE_NUMBER_FLAG_SIGNED)
{
                  // Some logic here
}

но все же этот код выполняется, даже если inputtype является десятичным или подписанным числом. Итак, я проверил значение inputType в журналах, которое выглядит как 12290.

Теперь, как это значение приближается к 12290, если я возьму ИЛИ (4096|8192), оно будет равно 12288.

 0001000000000000 (4096)
 0010000000000000 (8192)
 0011000000000000 (12288)

Должен ли я жестко кодировать 12290, чтобы удовлетворить этому условию?


person bond007    schedule 06.10.2016    source источник
comment
да, у меня такая же проблема, тогда я решил побитовую операцию   -  person Sreelal S    schedule 11.10.2018


Ответы (1)


person    schedule
comment
Пожалуйста, отредактируйте свой ответ, чтобы сделать его понятным для человека. Есть причина для всех тех, кто использует объяснения разметки вокруг окна редактора. И эта функция предварительного просмотра. - person GhostCat; 27.03.2017