>source

필요한 응답을 찾기가 어려워서이 질문을 게시했지만 어딘가에 답이 있어야합니다. 실제로 다른 곳에서 요청하고 응답 한 경우 올바른 방향으로 알려주세요.

키트 캣 장치에서 가져온 아래 이미지를 참조하십시오. 발판은 배경이 빨간색이며 몸은 녹색입니다. 내비게이션 바 뒤에있는 영역을 포함하여 모든 발판을 덮을 수있는 녹색이 필요합니다.

Ps .: 요청에 따라 코드

import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        scaffoldBackgroundColor: Colors.red,
      ),
      home: MyHomePage(),
    );
  }
}
class MyHomePage extends StatefulWidget {
  MyHomePage({Key key}) : super(key: key);
  @override
  _MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        color: Colors.green,
        child: Center(
        ),
    ),
      // Set bg to blue, to show that the Scaffold is indeed behind the Nav Bar...
      backgroundColor: Colors.blue,
    );
  }
  @override
  void dispose() {
    super.dispose();
  }
}


Ps² .: 명확하게하기 위해 내 문제는 내비게이션 바 뒤에 그리는 것입니다. 발판은 분명히 그 뒤에 숨어 있지만, 이것을 할 수는 없으며 SystemChrome.setEnabledSystemUIOverlays([SystemUiOverlay.top]); 를 사용하면  탐색 표시 줄이 숨겨져 있으며 상태 표시 줄과 같이 표시되어야합니다.

  • 답변 # 1

    Stack 를 사용할 수 있습니다  위젯을 사용하여 컨테이너를 비계로 덮을 수 있습니다.

    여기에서 읽으십시오 : https://docs.flutter.io/flutter/widgets/Stack-class.html

    이렇게 쓸 수 있습니다

    Stack(
      children: [
         Scaffold(...),
         Container(..., height: double.infinity, width: double.infinity),
      ]
    )
    
    

    콘테이너는 발판이 위에 놓여 있으므로 발판을 덮어야합니다.   Center 와 함께  위젯.

    Container
    
    

    와이즈 비츠  위젯은 하위 크기와 일치합니다.

    Center( child: Container( color: Colors.green, ), );

  • 이전 visual studio code - VSCode에서 명령 식별자를 찾는 방법은 무엇입니까?
  • 다음 firebase - 이 함수"Function CollectionReferencedoc ()"수정하는 방법