Значок Flutter AppBar не работает на всех экранах

У меня есть два значка на панели приложений при нажатии кнопки «Сохранить значок сохранения» и значок «Подтвердить» появится, он работает нормально, но значок панели приложения на большом экране вырезан в соответствии с изображением ниже. вот мой код

appBar: PreferredSize(
      preferredSize:  Size.fromHeight(70.0),
      child: AppBar(
      elevation: 10,
      automaticallyImplyLeading: false,
      backgroundColor: Colors.red,
        title:  Text('Edit',style:
              TextStyle(fontSize: MediaQuery.of(context).size.width*0.1),
        ),

        actions: <Widget>[
          isVisibile
              ?  Container(
            height: 50,
                width: 50,
                child: Padding(
                  padding:  EdgeInsets.only(right:MediaQuery.of(context).size.width*0.3),
                  child: IconButton(
                        icon:  Icon(
                            Icons.save,
                            color: Colors.white,
                            size: MediaQuery.of(context).size.width*0.1,
                          ),

                        onPressed: () {
                          
                        },
                      ),
                ),
              )

              : Container(),
          isInvisible
              ? Padding(
                padding: EdgeInsets.only(right:MediaQuery.of(context).size.width*0.05,bottom: MediaQuery.of(context).size.height*0.05),
                child: IconButton(
                    icon: Icon(
                      Icons.done,
                      color: Colors.white,
                      size: MediaQuery.of(context).size.width*0.1,
                    ),
                    onPressed: () async {
                      // approve
                    },
                  ),
              )
              : Container(),
        ],
      //),
      ),
    ),

вот моя панель приложений на больших экранах  введите описание изображения здесь вот мое изображение на маленьком экране введите описание изображения здесь

так как я могу сделать иконки отзывчивыми, спасибо


person Khal    schedule 22.08.2020    source источник


Ответы (1)


Поместите свой виджет AppBar как дочерний для Container и установите для поля EdgeInset.all(4). Это должно сработать.

Попробуйте следующий код:

appBar: PreferredSize(
      preferredSize:  Size.fromHeight(70.0),
      child: Container(
              padding: EdgeInset.all(4), // you can change this value to 8 
            child:AppBar(
            ...
person Jay Dangar    schedule 22.08.2020
comment
Джей Дангар, это работает, есть запас контейнера ошибок, я исправляю это дополнение, спасибо - person Khal; 22.08.2020