Если я правильно понимаю, вы можете использовать компонент showDialog , который лежит за AlertDialog с вложенным столбцом. Для зеленого цвета ou может использовать Opacity с контейнером:
showDialog(
context: context,
builder: (context) {
return Opacity(
opacity: 0.8, // some opacity
child: Container(
// container to set color
color: Colors.grey,
child: Column(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.end,
children: [
RaisedButton(
onPressed: null,
), // replace with your buttons
RaisedButton(
onPressed: null,
),
]
)
)
);
}
);
Напишите функцию, которая работает во время выполнения. Тогда позвони. Что-то вроде:
bool less(string a, string b)
{
auto ap = a.splitter(".").map!(x => to!int(x));
auto bp = b.splitter(".").map!(x => to!int(x));
while (!ap.empty && !bp.empty)
{
if (ap.front < bp.front) return true;
ap.popFront; bp.popFront;
}
return ap.empty;
}
static if (less("1.2.12", "1.2.2"))
pragma(msg, "it's less");
else
pragma(msg, "it's not less");
Вы можете вызывать нормальные функции во время компиляции. Это то, что в D мы называем CTFE (оценка функции времени компиляции).
По словам Уолтера Брайта (из моей памяти) «D обладает уникальной способностью запускать код D во время компиляции».