Flutter - поднять виджет над другими виджетами - PullRequest
1 голос
/ 29 января 2020

Как я могу поднять виджет над другими виджетами, мне нужно показать непрозрачность фона при фокусировке на вводе и отобразить ввод над виджетом над вопросом enter image description here enter image description here enter image description here

Ответы [ 2 ]

0 голосов
/ 30 января 2020

Вы можете использовать стек как родительский виджет для всех других виджетов.

0 голосов
/ 29 января 2020

Пример кода в качестве примера

class SO extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Scaffold(
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.spaceAround,
            children: <Widget>[X(), X(), X(), X()],
          ),
        ),
      ),
    );
  }
}

class X extends StatefulWidget {
  @override
  _XState createState() => _XState();
}

class _XState extends State<X> {
  bool isElevated = false;

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        print('_XState.build() tap');
        setState(() {
          isElevated = !isElevated;
        });
      },
      child: Material(
        elevation: isElevated ? 40 : 0, //change as needed
        animationDuration: Duration(milliseconds: 400), //change as needed
        child: Container(
          width: 100,
          height: 100,
          color: Colors.red,
        ),
      ),
    );
  }
}
...