Как сделать так, чтобы тумблер занимал все пространство в контейнере? - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь добиться гибкого поведения с помощью кнопки-переключателя, моя кнопка-переключатель находится внутри контейнера с высотой 60 пикселей и шириной infinte, как заставить кнопку переключения занимать все доступное пространство?

К сожалению, я не могу использовать MediaQuery, так как его использование каким-то образом нарушает мои функции выпадающего меню, есть ли другой способ?

вот мой код для кнопки переключения:

Container(
              decoration: BoxDecoration(
                borderRadius: BorderRadius.all(
                  Radius.circular(10),
                ),
                color: Color.fromRGBO(108, 101, 172, 1),
              ),
              width: double.infinity,
              height: 60,
              child: Padding(
                padding: EdgeInsets.symmetric(horizontal: 5, vertical: 5),
                child: ToggleButtons(
                  borderRadius: BorderRadius.all(
                    Radius.circular(10),
                  ),
                 textStyle: TextStyle(
                    fontWeight: FontWeight.w700,
                    fontFamily: 'OpenSans',
                    color: Colors.black,
                    fontSize: 17,
                  ),
                  selectedColor: Colors.black,
                  fillColor: Colors.white,
                  children: <Widget>[
                    Text('My country'),
                    Text('Global'),
                  ],
                  onPressed: (int index) {
                    setState(() {
                      for (int buttonIndex = 0;
                          buttonIndex < isSelected.length;
                          buttonIndex++) {
                        if (buttonIndex == index) {
                          isSelected[buttonIndex] = true;
                        } else {
                          isSelected[buttonIndex] = false;
                        }
                      }

                      if (index == 1) {
                        getGlobalResult();
                        isGlobal = true;
                        isTotal = true;
                      } else {
                        getCountryTotalResult(selectedValue);
                        isGlobal = false;
                        isTotal = true;
                        isDaySelected = [true, false, false];
                      }
                    });
                  },
                  isSelected: isSelected,
                ),
              ),
            ),

это то, что я получить,

togglebutton

чего я хочу достичь (сделал это с ограничениями) togglebutton

...