没有材料设计或cupertino定制的颤振?

时间:2018-11-02 20:54:12

标签: flutter flutter-layout

我对Flutter还是比较陌生,并且正在尝试创建一个不遵循材料设计准则(公司希望自己设计)的应用程序。

我似乎只能使用材料设计或Cupertino来创建东西。我不确定如何使用自定义脚手架,或者如何在小部件构建函数return new MaterialApp(...中使用,或者在AppBar中使用平坦的而不是有阴影的 from tkinter import * import csv import os os.chdir(r"C:\Users\Umer Selmani\Desktop\prog.practice\MP1") class Diet: def __init__(self,name): self.name = name name.title("Cafeteria") self.label_1=Label(name,text="Sehir Cafeteria", font="ariel 13 bold italic", fg="red",height="5", bg="darkblue").pack(fill=X) self.stradio=Radiobutton(name,text="1300").grid(row=2,column=1) self.ndradio=Radiobutton(name,text="1700").grid(row=2,column=2) self.rdradio=Radiobutton(name,text="2100").grid(row=2,column=3) main=Tk() my_gui=Diet(main) main.mainloop()

我希望这是有道理的。我只是想找到解决方法。

2 个答案:

答案 0 :(得分:2)

不使用Cupertino /材料设计没有问题。 实际上,颤动是考虑到自定义品牌设计的。恰好是将Material设计作为奖励来运送的。

Flutter提供了大量设计不可知的小部件,您可以使用它们来定制外观。一些例子是:

  • WidgetApp
  • GestureDetector
  • DecoratedBox

您还可以使用下层CustomPaintRenderBox

进行一些非常高级的渲染。

您可以在此处找到可用的列表:https://docs.flutter.io/flutter/widgets/widgets-library.html

答案 1 :(得分:0)

Flutter有一些流行短语,例如“一切都是小部件!”。因此,您以及在MaterialApp,CupertinoApp等上方编写的所有内容都是小部件。另一个流行语是“您不必再对设计师说不了”,这些主要是在告诉您您有空。

作为入口点,您有一个主要方法,调用一个名为 runApp

的方法。

void main() => runApp(SomeWidget());

因此,如果打开runApp的文档,则可以看到以下语句

  

膨胀给定的小部件并将其附加到屏幕上。在布局期间会给该小部件施加约束,迫使其填充整个屏幕。 ....

并且方法声明表明它期望有一个小部件,如此处void runApp(Widget app)所示。

实际上这些节目,甚至您的应用程序都是 widget ,您甚至可以在应用程序内运行应用程序。

总之,长话短说,那些类和您看到的所有东西都可以使用开箱即用的帮助程序,这些东西可以使用(并且大多易于修改),以使它们看起来本机,而设计师可能会告诉他们你用。

但是,使用Flutter,您不仅可以绑定到这些类,还可以以您想要的方式(或设计人员想要的)来实现所有内容,并且只需使用它,因为最终,所有内容都是一个小部件: )