0

我这里有一个简单 webview 的代码。它只是显示一个网页。但是,网页的顶部显示在通知栏下方(与页面顶部的某些按钮一样)。我怎样才能防止这种情况?我知道我可以隐藏通知栏/图标,但我想在通知栏下方显示 webview 小部件的内容而不隐藏它。我也不想使用应用栏。请帮帮我

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  MyAppState createState() => MyAppState();
}

class MyAppState extends State<MyApp> {
  late WebViewController controller;
  @override
  void initState() {
    super.initState();
    if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView();
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          body: WebView(
        initialUrl: 'https://flutter.dev',
        javascriptMode: JavascriptMode.unrestricted,
      )),
      debugShowCheckedModeBanner: false,
    );
  }
}
4

1 回答 1

1

只需用SafeArea

import 'dart:io';
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  MyAppState createState() => MyAppState();
}

class MyAppState extends State<MyApp> {
  WebViewController controller;
  @override
  void initState() {
    super.initState();
    if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView();
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
          body: SafeArea(
            child: WebView(
              initialUrl: 'https://flutter.dev',
              javascriptMode: JavascriptMode.unrestricted,
            ),
          )),
      debugShowCheckedModeBanner: false,
    );
  }
}

输出:

在此处输入图像描述

于 2021-08-21T09:42:58.800 回答