鸿蒙harmonyos next flutter混合开发之开发package

​​​​​​

  • 创建 package

    flutter create --template=package mypackage

package代码如下:

创建hello_world.dart

复制代码
///HelloWorld返回hello world 拼接param
class HelloWorld {
  String helloWorld(String param) => "hello world ${param}";
}

导出hello_world.dart

复制代码
library mypackage;

export 'src/hello_world.dart';
  • 创建flutter项目

    flutter create myflutter

  • myflutter pubspec.yaml中引入myPackage

    dependencies:
    flutter:
    sdk: flutter
    cupertino_icons: ^1.0.2
    mypackage:
    path: /Users/administrator/Desktop/workspace/mypackage

  • myflutter中调用

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

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

    class MyApp extends StatelessWidget {
    const MyApp({super.key});

    复制代码
    @override
    Widget build(BuildContext context) {
      return MaterialApp(
        title: 'Flutter Demo',
        theme: ThemeData(
          primarySwatch: Colors.blue,
        ),
        home: const MyHomePage(title: 'Flutter Demo Home Page'),
      );
    }

    }

    class MyHomePage extends StatefulWidget {
    const MyHomePage({super.key, required this.title});

    复制代码
    final String title;
    
    @override
    State<MyHomePage> createState() => _MyHomePageState();

    }

    class _MyHomePageState extends State<MyHomePage> {
    String helloWorld ="";

    复制代码
    @override
    void initState() {
      super.initState();
      helloWorld = HelloWorld().helloWorld("我是拼接的字符串!");
    }
    
    @override
    Widget build(BuildContext context) {
      return Scaffold(
        appBar: AppBar(
          title: Text("你好世界"),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Text('${helloWorld}',style: TextStyle(fontWeight: FontWeight.bold,fontSize: 26),)
            ],
          ),
        ),
      );
    }

    }

  • 效果展示

相关推荐
坚果派·白晓明14 分钟前
在鸿蒙设备上快速验证由lycium工具快速交叉编译的C/C++三方库
c语言·c++·harmonyos·鸿蒙·编程语言·openharmony·三方库
小镇敲码人21 分钟前
深入剖析华为CANN框架下的Ops-CV仓库:从入门到实战指南
c++·python·华为·cann
lbb 小魔仙1 小时前
【HarmonyOS实战】OpenHarmony + RN:自定义 useFormik 表单处理
react native·harmonyos
ujainu1 小时前
Flutter + OpenHarmony 实现经典打砖块游戏开发实战—— 物理反弹、碰撞检测与关卡系统
flutter·游戏·openharmony·arkanoid·breakout
果粒蹬i1 小时前
【HarmonyOS】DAY7:鸿蒙跨平台 Tab 开发问题与列表操作难点深度复盘
华为·harmonyos
微祎_1 小时前
构建一个 Flutter 点击速度测试器:深入解析实时交互、性能度量与响应式 UI 设计
flutter·ui·交互
王码码20351 小时前
Flutter for OpenHarmony 实战之基础组件:第二十七篇 BottomSheet — 动态底部弹窗与底部栏菜单
android·flutter·harmonyos
小镇敲码人1 小时前
探索CANN框架中TBE仓库:张量加速引擎的优化之道
c++·华为·acl·cann·ops-nn
ITUnicorn2 小时前
【HarmonyOS6】ArkTS 自定义组件封装实战:动画水杯组件
华为·harmonyos·arkts·鸿蒙·harmonyos6
小镇敲码人2 小时前
探索华为CANN框架中的ACL仓库
c++·python·华为·acl·cann