Я новичок в Firebase и наконец получил данные от Firebase, чтобы трепетать. Я работаю с цветами, и у каждой карты есть номер цвета и цвета.
У меня есть в Firebase: поле colorCode, которое является строкой и имеет значение '0xFFFFB142'
В Flutter я пробовал чтобы сделать это так:
final int colorCode = list[index]['colorCode'].hashCode;
Container(
height: 25.0,
width: 25.0,
color: Color(colorCode),
),
Я не получаю ошибки, но не вижу цвета.
Это должен быть int, но это шестнадцатеричный код в строковом коде. Когда я пытаюсь в Firebase int, у меня происходит сбой, потому что он шестнадцатеричный.
Обновление: Спасибо всем за вашу помощь! Я сам ввел код в Firebase. Это то же самое, что вы обычно помещаете в это место, например color: Color (0xFFFFB142), где FFB142 - это цвет # FFB142 В Firebase я использовал String, потому что не допускается использование int или простого кода. С моим кодом, когда я его печатаю: он получил 171924876, это не правильный цветовой код.
Я пробовал это:
final dynamic colorCode =
list[index]['colorCode'].toString();
print(colorCode); // the right color code is printend: 0xFFFFB142
И когда я вставил это в:
Container(
height: 25.0,
width: 25.0,
color: Color(0xFFFFB142),
Работает нормально, но у меня для каждого элемента есть другой цветовой код в Firebase.
Мне очень странно, что я получил это сообщение об ошибке, потому что я не хочу int там, но цветовой код, такой как 0xFFFFB142
type 'String' is not a subtype of type 'int'
Надеюсь, вы можете мне помочь!