zoukankan      html  css  js  c++  java
  • 使用Flame插件

    在pubspec.yaml下添加flame插件,并通过flutter packages get命令下载插件,或者使用Visual Studio Code保存文件会自动下载插件。

    dependencies:
    flutter:
    sdk: flutter

    cupertino_icons: ^0.1.2

    flame: ^0.13.0
    1
    2
    3
    4
    5
    6
    7
    Flame插件已经提供了一个完整的游戏开发框架,所以我们只需要专心编写实际的更新和渲染过程。首先,需要将应用程序转化为游戏模式,要做两个操作:全屏和纵向。而令人感到巴适的是,Flame插件已经封装好了这些实用的功能,我们只需要编写调用代码就可以了。

    我们先在main.dart的顶部添加以下引用。

    import 'package:flame/util.dart';
    import 'package:flutter/services.dart';
    1
    2
    然后在main.dart的main函数内部创建Flame的Util类的实例,调用其实例的全屏(fullScreen)和设置方向(setOrientation)函数,同时要注意,因为这些函数的返回值类型是未来(Future),所以要在这些函数前面添加等待(await)。

    未来(Future)、异步(async)和等待(await)是一种特殊的编码方法,它让那些需要长时间才能处理完成的代码在不同的线程上完成,而且不会阻塞主线程。

    为了能够等待(await)未来(Future)处理完成,相关的代码必须在异步(async)函数内,所以我们必须修改main函数,使它成为一个异步函数。

    void main() async {
    Util flameUtil = Util();
    await flameUtil.fullScreen(http://www.amjmh.com/v/BIBRGZ_558768/);
    await flameUtil.setOrientation(DeviceOrientation.portraitUp);
    1
    2
    3
    4
    到这里为止,我们的main.dart里面应该有以下代码。

    import 'package:flutter/material.dart';

    import 'package:flame/util.dart';
    import 'package:flutter/services.dart';

    void main() async {
    Util flameUtil = Util();
    await flameUtil.fullScreen();
    await flameUtil.setOrientation(DeviceOrientation.portraitUp);
    }

  • 相关阅读:
    mysql 复制表数据,表结构的3种方法
    MySQL 存储过程使用表名做参数
    关于mysql engine(引擎)的疑问
    mysql存储过程之循环
    mysql 命令大全
    关于mysql的表名/字段名/字段值是否区分大小写的问题
    navicat for mysql 快捷键(原创)
    解决"Subquery returns more than 1 row"sql查询错误
    mysql:“Access denied for user 'root@IP地址'"
    MySQL常用经典语句
  • 原文地址:https://www.cnblogs.com/hyhy904/p/11488487.html
Copyright © 2011-2022 走看看