Предоставление виджетам определенного места на всех экранах

я только начал учиться разрабатывать приложения на флаттере ...

но мне есть о чем спросить:

я пытаюсь разместить некоторые виджеты в определенном месте экрана на всех экранах ..

например вот мой код:

 class _HomePageState extends State<HomePage> {
 @override
 Widget build(BuildContext context) {
return new Scaffold(
  body: new Container(
      child: Column(
    children: [
      Container(
        padding: EdgeInsets.only(top: 50.0),
        child: new Image.asset(
          'assets/images/walk1ar.png',
          fit: BoxFit.cover,
          height: 30.0,
          width: 169.0,
          alignment: Alignment.center,
        ),
      ),
      new Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          Container(
            padding: EdgeInsets.only(top: 30.0, bottom: 5.0),
            child: new Image.asset(
              'assets/images/walkside.png',
              fit: BoxFit.cover,
              height: 445.0,
              width: 14.0,
              alignment: Alignment.centerRight,
            ),
          ),
          Container(
            padding: EdgeInsets.only(
                top: 30.0, bottom: 5.0, left: 50.0, right: 50.0),
            child: new Image.asset(
              'assets/images/walkpic1.png',
              fit: BoxFit.cover,
              height: 445.0,
              width: 250.0,
              alignment: Alignment.center,
            ),
          ),
          Container(
            padding: EdgeInsets.only(top: 30.0, bottom: 5.0),
            child: new Image.asset(
              'assets/images/walkside.png',
              fit: BoxFit.cover,
              height: 445.0,
              width: 14.0,
              alignment: Alignment.centerLeft,
            ),
          ),
        ],
      ),
      new Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          Container(
              child: Text(
                'اهلاً وسهلاً',
                style:
                    new TextStyle(fontSize: 20.0, color: Color(0xFF49C275)),
              )),
        ],
      ),
      new Row(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          Container(
              padding: EdgeInsets.only(bottom: 5.0),
              child: Text(
                'أهلا وسهلا بكم في معرض وظائف ٢٠١٨',
                style:
                    new TextStyle(fontSize: 14.0, color: Color(0xFF707070)),
              )),
        ],
      ),
      new Column(
        crossAxisAlignment: CrossAxisAlignment.stretch,
        mainAxisAlignment: MainAxisAlignment.end,
        children: <Widget>[
          Container(
            child: new RaisedButton(
              child: const Text(
                'إبدأ',
              ),
              color: Color(0xFF49C275),
              elevation: 71.0,
              splashColor: Colors.blueGrey,
              onPressed: () {
                // Perform some action
              },
            ),
          )
        ],
      ),
    ],
  )),
);

}

здесь я хочу, чтобы последний виджет, который является кнопкой, всегда был внизу экрана ... также изображение пешехода ... я хочу, чтобы один всегда держался с правой стороны экрана, а другой - слева ...

как это сделать?

Если вы хотите свободно размещать изображения, используйте Stack. Чтобы разместить что-нибудь внизу, также может быть полезно proandroiddev.com/….

Günter Zöchbauer 25.09.2018 10:29

@ GünterZöchbauer, не могли бы вы привести мне пример стека?

Lama 25.09.2018 14:01

@ GünterZöchbauer, и когда я добавлю нижнюю панель навигации в качестве ссылки, которую вы упомянули ... будет верхняя панель навигации, которую я не хочу показывать

Lama 25.09.2018 15:35
0
3
43
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать стек и выровнять кнопку по краю экрана. Вот пример:

Stack(        
     children: <Widget>[
         Align(
            alignment: Alignment.bottomCenter,
            child: Container(
            width: width,
            height: 40.0,
             child: RaisedButton(
            color: azulClaro,
            child: Text(
                   'My Button',
                   style: TextStyle(
                     color: Colors.white,
                    ),
                   ),
               ),
           ),
        ),
     ],
  );

Большое спасибо! это мне очень помогло!

Lama 26.09.2018 09:06

Другие вопросы по теме