首页 > 其他分享 >Flutter中 关于package:flutter/cupertino.dart和package:flutter/material.dart的区别

Flutter中 关于package:flutter/cupertino.dart和package:flutter/material.dart的区别

时间:2023-12-25 11:35:41浏览次数:27  
标签:package Material iOS dart import flutter

import 'package:flutter/cupertino.dart';import 'package:flutter/material.dart'; 这两个语句分别用于导入 Flutter 框架中的不同部分,而且它们通常用于创建不同风格的用户界面。


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

  • 这是导入 Material 部分的语句,Material 是一种设计语言,由 Google 推出,主要用于移动设备和 Web 应用程序的用户界面设计。
  • Material 包含了许多用于构建 Material Design 风格应用的组件,如 AppBarDrawerSnackBar 等。
  • Material 部分适用于大多数应用,特别是那些希望在 Android 和 iOS 上保持一致外观的应用。


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

  • 这是导入 Cupertino 部分的语句,Cupertino 是一种设计语言,由 Apple 推出,主要用于 iOS 设备的用户界面设计。
  • Cupertino 包含了一些 iOS 风格的组件,如 CupertinoNavigationBarCupertinoButtonCupertinoDatePicker 等。
  • Cupertino 部分适用于希望在 iOS 设备上使用 iOS 风格组件的应用,使应用看起来更符合 iOS 设备的外观和感觉。

在创建 Flutter 应用程序时,可以选择使用 Material 风格、Cupertino 风格或两者混合使用,具体取决于你的应用目标和设计选择。通常,如果你希望应用在 Android 和 iOS 上都有相似的外观,你可能会选择使用 import 'package:flutter/material.dart';。如果主要关注 iOS 设备,你可能会选择使用 import 'package:flutter/cupertino.dart';

又get一个知识点:)

标签:package,Material,iOS,dart,import,flutter
From: https://blog.51cto.com/xaye/8964918

相关文章

  • flutter 桌面通知 气泡消息数量
    先上效果原理Android操作系统提供的NotificationManager接口来设置应用程序图标上的徽章iOS操作系统提供的UIApplication.shared.applicationIconBadgeNumber使用flutterflutterpubaddflutter_app_badger通过在启动退出时候更新气泡import'package......
  • 在Flutter中使用PhotoViewGallery指南
    介绍Flutter中的PhotoViewGallery是一个功能强大的插件,用于在应用中展示可缩放的图片。无论是构建图像浏览器、相册应用,还是需要在应用中查看大图的场景,PhotoViewGallery都是一个不错的选择。添加依赖首先,需要在pubspec.yaml文件中添加photo_view插件的依赖。打开该文件,然后在depen......
  • Flutter 显式动画
    创建AnimationController的同时,也赋予了一个vsync参数。vsync的存在防止后台动画消耗不必要的资源。您可以通过添加SingleTickerProviderStateMixin到类定义,将有状态的对象用作vsync因为addListener()函数调用setState(),所以每次Animation生成一个新的数字,当前帧......
  • Flutter-Dart中(){}和()=>{}的细微区别
    ()=>{}在Dart语言中,=>符号是箭头语法的一部分,它用于创建单行函数或表达式的缩写。在你的两个例子中,使用()=>和(){}都是合法的,但有细微的区别。()=>箭头函数(Arrowfunction):这是一种简写形式,适用于只有一条语句的函数体。在这种情况下,函数体的结果就是函数的返回值。示例:on......
  • Flutter子工程编译,Ruby升级及Cocoapods安装问题集
    背景:工程为iOS原生与Flutter混合开发的工程,在编译Flutter子工程的过程中报了一个错,一度让我以为是ruby与pod的版本不兼容导致了一些奇奇怪怪的问题,随即来回折腾了Ruby环境升级与pod的升级安装。问题1:flutter子工程执行了flutterpubget,执行flutterbuildios--no-codesign时,报......
  • Flutter 隐式动画
    通过几行代码就可以实现隐式动画,由于隐式动画背后的实现原理和繁琐的操作细节都被隐去了,所以叫隐式动画,FLutter中提供的[AnimatedContainer]、[AnimatedPadding]、[AnimatedPositioned.AnimatedOpacity]、[AnimatedDefaultTextStyle]、[AnimatedSwitcher]都属于隐式动画隐式动画......
  • Android应用开发长按拖拽-Flutter的LongPressDraggable控件回调函数onDraggableCancel
    onDraggableCanceled介绍LongPressDraggable的onDraggableCanceled回调在拖动被取消时触发。拖动可能会被取消,例如用户在拖动开始后移动了太快或在放置之前取消了拖动。onDraggableCanceled的使用以下是如何使用onDraggableCanceled的示例:LongPressDraggable<int>(//......
  • [VUE] WebPack 打包后自动修改 dist 中 package.json 版本号
    我们在开发npm包时,开发期的package.json通常并不一定是发布到npm仓库的package.json。这种情况下每次改版本号需要改两个地方,比较麻烦。我一般使用webpack进行打包,所以有了下面这个小插件。插件源码modify.version.plugin.js/**修改版本号webpack插件*/functi......
  • Flutter AnimatedList 实现动态列表
    import'dart:async';import'package:flutter/material.dart';finalGlobalKey_globalKey=GlobalKey();classMyAnimatedListextendsStatelessWidget{constMyAnimatedList({super.key});@overrideWidgetbuild(BuildContextcont......
  • Flutter 编译是pod intsall github 资源下载失败
    在fluterr编译报错然后显示github.xxxxx访问超时处理办法podinstall主要是读取profile文件platform:ios,'9.0'target'YourAppName'douse_frameworks!#这是安装依赖位置pod'SomeDependency'#添加其他依赖项...end想办法下载到github的文......