我需要知道Flutter是否会使用单个代码库在iOS上渲染iOS Cupertino风格,在Android上渲染Material。在开始使用Flutter开发我的应用程序之前,我想知道这一点。
如果不是,我将如何在一个代码中管理两个不同的UI?我不可能在代码的各处使用if / else。
最近,Flutter 为Switch、SwitchListTile和CircularProgressIndicator添加了自适应构造函数,这将有助于在单个代码库中进一步推进平台感知小部件。虽然目前只有这三个,但期待未来更多!
这些功能正在开发中。我建议研究一下这个库:https : //pub.dartlang.org/packages/flutter_platform_widgets
除此之外,即使没有此库,您也可以做很多事情。一切都取决于您的资源,需求和项目的复杂性。
例如,如果您是一个人或一个小团队工作,则项目的复杂性可能不会令人难以承受,并且整个应用程序最多仅包含几十个Widget派生类。在这种情况下,也许您可以在自定义Widget类中故意对平台自适应行为进行编程,以便长期与他们一起工作将很高兴。
此工作流程并不总是适用,一开始可能看起来很复杂,但以后会变得更加自然。
您应该尝试图库应用程序:https : //play.google.com/store/apps/details?id=io.flutter.demo.gallery&hl=zh-CN在此处,当您按菜单按钮时,可以将平台机制设置为山景城(Android)或库比蒂诺(iOS)。这样一来,您可以看到在任何一个平台上它的外观。
这是根据平台选择具有代码的Cupertino或Material的示例:据我所知,https://medium.com/flutter-io/do-flutter-apps-dream-of-platform-aware-widgets-7d7ed7b4624d您必须选择这样的小部件。
| 归档时间: |
|
| 查看次数: |
5473 次 |
| 最近记录: |