Android Studio 使用Flutter开发第一个Web页面(进行中)

附上Flutter官方文档

Android Studio操作

1、新建Flutter项目(需要勾选web选项)

在这里插入图片描述
新建项目构成为:

在这里插入图片描述

2、配置 Flutter 使用 path 策略

官方文档
main.dart中,需要导入flutter_web_plugins/url_strategy.dart包,并在main(){}函数中usePathUrlStrategy();这是官方文档中让Flutter 使用 path 策略的方法
引用:
pubspec.yaml中引用

 url_strategy: ^0.2.0

pub get
在mian.dart中配置 usePathUrlStrategy();

import 'package:flutter_web_plugins/url_strategy.dart';
void main() {
  usePathUrlStrategy();
  runApp(const MyApp());
}

3、运行

新建页面运行
记得将运行设备选到web

在这里插入图片描述

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

class LoginPage extends StatefulWidget{
  @override
  State<StatefulWidget> createState() =>LoginState();
}

class LoginState extends State<LoginPage>{
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.white,
      body: buildBody(),
    );
  }

  Widget buildBody(){
    return Stack(
      children: [
        Image.network('http://192.168.0.86:81/img/login-bg.svg')
      ],
    );

  }

}

使用Image展示网络图片

第一次运行报错:
在这里插入图片描述
解决方案一:

终端执行命令:flutter run -d chrome --web-renderer html

在这里插入图片描述
再次运行:
在这里插入图片描述
该方案缺点:
每次重新运行图片都会报错,需要重新执行flutter run -d chrome --web-renderer html命令

方案二:
看报错提示应该与跨域有关,根据官网的相关文档,Image这个widgetweb上支持有限,这时候建议使用其他方式来加载图片
我们选择使用img标签来显示,通过ImageElements来实现即可,代码如下:

import 'dart:html';
import 'dart:ui' as ui;
import 'package:flutter/cupertino.dart';

class WebImage extends StatelessWidget{
  String url;
  double width;
  double height;

  WebImage(this.url, this.width, this.height);

  @override
  Widget build(BuildContext context) {
    String _divId = "web_image_" + DateTime.now().toIso8601String();
    // ignore: undefined_prefixed_name
    ui.platformViewRegistry.registerViewFactory(
      _divId,
          (int viewId) => ImageElement(src: url),
    );
    return SizedBox(
      width: width,
      height: height,
      child: HtmlElementView(key: UniqueKey(),
        viewType: _divId,),
    );
  }

}

注意,这种方式图片不能按照自身尺寸显示,所以必须设置宽高才可以。

如果想使用圆形图片,则用ClipOval包装即可,如下:

ClipOval(
  child: WebImage("https://cdnimagelive.knowbox.cn/image/784111920965119.png", 50, 50)
)

更多问题处理方案请参考下面文章:
【Flutter进阶】 Web开发中如何加载网络图片

遇到问题:如何禁止图片缩放

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Android Studio使用Flutter,首先我们需要安装Flutter插件。我们可以打开Android Studio,然后选择“File”菜单,点击“Settings”打开设置界面。在设置界面的左侧面板找到“Plugins”选项,然后点击“Browse repositories”按钮。在弹出的对话框搜索“Flutter”,找到“Flutter”插件后,点击“Install”按钮进行安装。安装完成后,需要重新启动Android Studio。 安装完毕后,我们可以开始创建一个Flutter项目。在Android Studio的欢迎界面选择“Start a new Flutter project”选项,点击“Create New Project”按钮。在弹出的对话框选择项目路径和项目名称,然后点击“Next”按钮。接下来可以选择Flutter版本和项目模板,例如“Flutter Application”,然后点击“Finish”按钮。 创建项目后,我们可以在Android Studio编写Flutter代码。在项目的lib目录下可以找到main.dart文件,在该文件编写Flutter的UI布局和逻辑代码。我们可以使用文网提供的Flutter控件、组件和API来构建我们的应用程序界面和功能。 在Android Studio运行Flutter项目,我们可以通过点击工具栏上的运行按钮来启动模拟器或连接的Android设备。选择目标设备后,Android Studio会自动构建和安装我们的Flutter应用程序。在模拟器或设备上运行后,我们就可以看到我们的应用程序在模拟器或设备上运行并呈现出来。 通过上述步骤,我们就可以在Android Studio使用Flutter文网提供的资源和文档来创建和开发我们的Flutter应用程序。希望以上回答对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值