Flutter DateTime, Открыть Закрыть, если - PullRequest
0 голосов
/ 22 июня 2019

Я хочу показать виджет с 09:00 до 20:00, в другой раз другой виджет, например, сейчас 13:00 мой магазин открыт. Я хочу показать, открыть мой магазин.

спасибо

openSaat() {
  return Container(
    width: 170,
    height: 40,
    decoration: BoxDecoration(color: Colors.black),
    child: Row(
      mainAxisAlignment: MainAxisAlignment.center,
      children: <Widget>[
        CircleAvatar(
          backgroundColor: Colors.green,
          radius: 12,
        ),
        SizedBox(width: 5,),
        Text("Open Now",style: TextStyle(fontSize: 20,fontWeight: FontWeight.bold,color: Colors.white),)
      ],
    ),
  );
}

closeSaat() {
  return Container(
    width: 170,
    height: 40,
    decoration: BoxDecoration(color: Colors.black),
    child: Center(
      child: Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          CircleAvatar(
            backgroundColor: Colors.red,
            radius: 12,
          ),
          SizedBox(width: 5,),
          Text("Close Now",style: TextStyle(fontSize: 20,fontWeight: FontWeight.bold,color: Colors.white),)
        ],
      ),
    ),
  );
}

1 Ответ

1 голос
/ 22 июня 2019
@override
  Widget build(BuildContext context) {
    return new Scaffold(
    body: currentWidget()
    );
  }
  static DateTime now = DateTime.now();

   Widget currentWidget() {
    var hours = now.hour;

    if (hours >= 09 && hours < 21) {
      return _openSaat();
    } else
      return _closeSaat();
  }



Widget _openSaat() {
  return Container(
    width: 170,
    height: 40,
    decoration: BoxDecoration(color: Colors.black),
    child: Row(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        CircleAvatar(
          backgroundColor: Colors.green,
          radius: 12,
        ),
        SizedBox(
          width: 5,
        ),
        Text(
          "Open Now",
          style: TextStyle(
              fontSize: 20, fontWeight: FontWeight.bold, color: Colors.white),
        )
      ],
    ),
  );
}

Widget _closeSaat() {
  return Container(
    width: 170,
    height: 40,
    decoration: BoxDecoration(color: Colors.black),
    child: Center(
      child: Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          CircleAvatar(
            backgroundColor: Colors.red,
            radius: 12,
          ),
          SizedBox(
            width: 5,
          ),
          Text(
            "Close Now",
            style: TextStyle(
                fontSize: 20, fontWeight: FontWeight.bold, color: Colors.white),
          )
        ],
      ),
    ),
  );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...