【问题标题】:Bottom Overflowed By Infinity Pixels in FlutterFlutter 中的底部被无限像素溢出
【发布时间】:2021-11-20 06:29:50
【问题描述】:

我使用了从网站加载的 Webview 脚本数据。仅显示来自帖子标题的数据,但未显示 Webview 数据,而是在屏幕上显示由无限像素溢出的底部。我找不到我的问题。请给我建议。

  body: Container(
        height: 100,
        child: Padding(
        padding: EdgeInsets.all(8.0),
        child: Column(
          children:[
            Text(widget.title,
            textAlign:TextAlign.start,
             style: TextStyle(fontSize:19,  )
            ),
            WebView(
              navigationDelegate: (NavigationRequest request) {
                print('allowing navigation to $request');
                return NavigationDecision.navigate;
              },
              javascriptMode: JavascriptMode.unrestricted,
              initialUrl:'data:text/html;base64,$contentBase64',
              onWebResourceError: (error) {
                //EasyLoading.dismiss();
              },
              onPageFinished: (finish) {
                //EasyLoading.dismiss();
              },
            ),
          ],
    
        )
        )
      ),

【问题讨论】:

  • 删除容器和列,你不能像这样使用webview,使用flutter_inappwebviewpub.dev/packages/flutter_inappwebview
  • 已经移除了容器,但我已经使用了 SingleChildScrollView。底部溢出无限像素问题已修复。但是 webview 数据不显示?帖子标题和网页视图都会显示。
  • 试试我的回答here希望对你有帮助
  • @RavindraS.Patil 我使用并修复了它,但未显示 webview 数据。
  • @Abhijith。你有这样的脚本吗?

标签: flutter dart


【解决方案1】:

用 expand() 包裹 webview。

完整代码:

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

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key}) : super(key: key);

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('WebView Demo'),
      ),
      body: Padding(
          padding: EdgeInsets.all(8.0),
          child: Column(
            children: [
              Text("widget.title",
                  textAlign: TextAlign.start,
                  style: TextStyle(
                    fontSize: 19,
                  )),
              Expanded(
                  child: WebView(
                navigationDelegate: (NavigationRequest request) {
                  print('allowing navigation to $request');
                  return NavigationDecision.navigate;
                },
                javascriptMode: JavascriptMode.unrestricted,
                initialUrl: 'https://www.google.com/',
                onWebResourceError: (error) {
                  //EasyLoading.dismiss();
                },
                onPageFinished: (finish) {
                  //EasyLoading.dismiss();
                },
              )),
            ],
          )),
    );
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-21
    • 2023-02-03
    • 2019-03-12
    • 2019-10-14
    • 2019-06-06
    • 2020-06-18
    • 1970-01-01
    • 2021-06-21
    相关资源
    最近更新 更多