我在学习 Flutter 时遇到了两种类型的设计 MaterialApp 和 CupertinoApp。所以,我想知道我们是否要为 android 和 ios 创建一个应用程序,我们是否应该创建一个单独的应用程序,使用 MaterialApp for android 和一个单独的应用程序,使用 CupertinoApp for ios?或者,如果我们说,仅使用 MaterialApp 创建应用程序,该应用程序的 ios 版本会自动获得 CupertinoApp 吗?
Nel*_*ago 16
跨平台框架意味着它可以在多个操作系统中执行。这并不意味着它会自动相应地设计您的应用程序,这取决于开发人员。您必须检查您的应用程序正在运行的平台,您可以通过简单的条件来做到这一点:
if(Platform.isIOS){
return CupertinoButton();
} else if(Platform.IsAndroid) {
return ElevatedButton();
}
Run Code Online (Sandbox Code Playgroud)
或者您可以使用flutter_platform_widgets等包来帮助简化您的代码。
voi*_*oid 15
Material 小部件为 iOS、Android 和 Web 实现了 Material 设计语言。
Cupertino 小部件基于 Apple 的人机界面指南实现了当前的 iOS 设计语言。
为什么要编写 Cupertino 应用程序?
Material 设计语言适用于任何平台,而不仅仅是 Android。当您在 Flutter 中编写 Material 应用程序时,它在所有设备上都具有 Material 外观,甚至是 iOS。如果您希望您的应用程序看起来像标准的 iOS 风格的应用程序,那么您可以使用 Cupertino 库。
从技术上讲,您可以在 Android 或 iOS 上运行 Cupertino 应用程序,但是(由于许可问题)Cupertino 在 Android 上没有正确的字体。因此,在编写 Cupertino 应用程序时,请使用 iOS 专用设备。
您将实现一个 Cupertino 风格的购物应用程序,其中包含三个选项卡:一个用于产品列表,一个用于产品搜索,一个用于购物车。
如果您想阅读更多关于Cupertino和 的内容Material。检查以下链接:
You can also use a flutter package called flutter_platform_widgets to check which platform your app is running on and use specific widgets(either Material or Cupertino)
This package link is : flutter_platform_widgets
I hope this helps
| 归档时间: |
|
| 查看次数: |
4559 次 |
| 最近记录: |