当前位置: 首页 > article >正文

鸿蒙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),)
          ],
        ),
      ),
    );
  }
}
  • 效果展示


http://www.kler.cn/news/330279.html

相关文章:

  • C++队列、双向队列
  • Linux Debian12使用Podman安装bwapp靶场环境
  • [Linux]Shell基本
  • X-Spreadsheet使用教程:打造你的Web端电子表格应用
  • 在实时语音交互上超过GPT-4o,端到端语音模型Mini-Omni部署
  • 滚雪球学MySQL[8.3讲]:数据库中的JSON与全文检索详解:从数据存储到全文索引的高效使用
  • 【Kubernetes】日志平台EFK+Logstash+Kafka【实战】
  • Android中的页面跳转机制
  • 【Android 源码分析】Activity生命周期之onDestroy
  • 如何使用Flask框架创建一个类似OpenAI的REST API接口
  • 一文上手SpringSecurity【三】
  • 大语言模型入门(二)——提示词
  • 5分钟学会SPI
  • MySQL基础练习题49-低质量的问题
  • 【动态规划】完全背包问题
  • 媒介坊:软文自助发布平台,开启营销新篇章
  • 什么是大语言模型的大海捞针指标
  • 【数据库差异研究】update与delete使用表别名的研究
  • Swift并发笔记
  • 「4.3」维护序列
  • 多系统萎缩患者必看!这些维生素助你对抗病魔
  • Docker的入门详解
  • 第十四讲-输入控件QPlainTextEdit
  • redis数据库学习一
  • [Cocoa]_[初级]_[使用NSNotificationCenter作为目标观察者实现时需要注意的事项]
  • STM32F103C8----3-1 LED闪烁(跟着江科大学STM32)
  • 【TypeScript】异步编程
  • Django Nginx+uwsgi 安装配置
  • Python开发环境配置(mac M2)
  • Qt 教程全集目录公布(方便查阅)