Как я могу решить эту ошибку "функция сборки вернула ноль"? - PullRequest
0 голосов
/ 18 апреля 2019

Мне известно, что этот вопрос задавался несколько раз, и я попробовал то, что было предложено, то есть разместил «возврат» в нужных местах. Я также следовал инструкциям в своей консоли и пытался добавить пустой контейнер, но в результате мой экран становится черным. Итак, вот мой код:

class SettingsPage extends StatefulWidget {
  @override
  _SettingsPageState createState() => _SettingsPageState();
}

class _SettingsPageState extends State<SettingsPage> {
  @override
  Widget build(BuildContext context) {
    bool isSystemSelected;
    final stream = AllowedCallInheritedWidget.of(context).allowedCallStream;
    return StreamBuilder<String>(
      stream: stream,
      builder: (context, snapshot) {
        if (snapshot.data.toString().contains('PRIORITY_SENDERS_CONTACTS')) {
          isSystemSelected = true;
          return AlertDialog(
            backgroundColor: isSystemSelected ? Colors.blueGrey : Colors.amber,
            title: Text(snapshot.data),
          );
        } else if (snapshot.data
            .toString()
            .contains('PRIORITY_SENDERS_STARRED')) {
          isSystemSelected = true;
          return AlertDialog(
            backgroundColor: isSystemSelected ? Colors.blueGrey : Colors.amber,
            title: Text(snapshot.data),
          );
        } else if (snapshot.data.toString().contains('PRIORITY_SENDERS_ANY')) {
          isSystemSelected = true;
          return AlertDialog(
            backgroundColor: isSystemSelected ? Colors.blueGrey : Colors.amber,
            title: Text(snapshot.data),
          );
        }
      },
    );
  }
}

То, что я пытаюсь сделать, это обновить изменения системы Android в режиме реального времени. Спасибо за любую помощь!

Редактировать: я должен добавить, что "Виджет-нарушитель: StreamBuilder"

...