Korrespondenz zwischen Flutter und CSS im Shadow-StilVon der Benutzeroberfläche vorgegebener CSS-StilBreite: 75px; Höhe: 75px; Hintergrundfarbe: rgba(255, 255, 255, 1); Rahmenradius: 4px; Kastenschatten: 0px 0,5px 5px 0px rgba (0, 0, 0, 0,08); Layout im Flutter-StilContainer( Einschränkungen: BoxConstraints.tightFor(Breite: 75, Höhe: 75), Rand: EdgeInsets.only (links: 0,5, rechts: 0,5, oben: 0,5, unten: 3), //Schattenlayout-Dekoration: BoxDecoration( Farbe: WBColors.white, borderRadius: BorderRadius.circular(8), boxShadow: [ BoxShadow Farbe: Farbe.vonRGBO(0, 0, 0, 0,08), Offset: Offset(0, 0,5), Unschärferadius: 5, Ausbreitungsradius: 0 ) ] ), Ausrichtung: Ausrichtung.zentriert, Kind: ..., ) Korrespondenz
Verarbeitung von TextfeldrändernDer von der Benutzeroberfläche vorgegebene CSS-Stil lautet wie folgtBreite: 335px; Höhe: 138px; Rand: 0,5px durchgezogen rgba(230, 230, 230, 1); Rahmenradius: 10px; Flutter behandelt es wie folgtTextfeld( Tastaturtyp: TextEingabetyp.mehrzeilig, Controller: Textbereichscontroller, maxZeilen: 7, maxLength: 200, Dekoration: InputDecoration( // Platzhalter in H5 hintText: „Klicken Sie, um den Namen des Kunden einzugeben …“, //Abstand des inneren Textrands contentPadding: 14.0, //Nicht ausgewählte Farbe enabledBorder: OutlineInputBorder( borderRadius: BorderRadius.circular(5.0), Rahmenseite: Rahmenseite (Farbe: Farbe (0xFFEAEAEA), Breite: 0,5), ), //Äußere Rahmenfarbe bei Auswahl von focusedBorder: OutlineInputBorder( borderRadius: BorderRadius.circular(5.0), Rahmenseite: Rahmenseite (Farbe: Farbe (0xFFEAEAEA), Breite: 0,5), ), Hinweisstil: Textstil( Schriftgröße: 14, Schriftfamilie: „PingFangSC-Medium“, Farbe: Farbe (0xFFCCCCCC), ), ZählerText: '', ), beiÄnderung: (Ereignis) { ///Auf das Eingabefeld hören und den Wert des Eingabefelds zurückgeben model.callback(event); } , ) Diese Art von Code, der normalerweise mit einer Zeile CSS erstellt werden kann, erfordert eine komplexe Stilverarbeitung in Flutter, die manchmal fehleranfällig ist. Standardmäßig verwendet Flutter den blauen Systemrahmen. Es ist schwierig, die Rahmenfarbe zu ändern, ohne die richtige API zu finden. FarbverlaufsschaltflächenlayoutBenutzeroberfläche mit CSS-StilBreite: 335px; Höhe: 46px; Hintergrund: linearer Farbverlauf (98 Grad, RGBA (242, 82, 40, 1) 0 %, RGBA (242, 82, 40, 1) 14,000000000000002 %, RGBA (252, 175, 60, 1) 94 %, RGBA (252, 175, 60, 1) 100 %); Rahmenradius: 23px; Flutter-Layout-StilContainer( Höhe: 46, Breite: UIScreen.screenWidth()-30, Dekoration: BoxDecoration( Farbverlauf: Linearer Farbverlauf (Farben: [ Farbe (0xFFF25228), Farbe (0xFFFCAF3C), ], beginne: FractionalOffset(0, 1), ende: FractionalOffset(1, 0)), borderRadius: BorderRadius.circular(23), ), Kind: FlatButton( beim Drücken: (){ ///Klicken Sie auf die Schaltfläche, um das Popup-Fenster zu schließen callback(); }, Kind: Text( „Ich habe den Zustand des Autos bestätigt und werde es umgehend abholen“, Stil: Textstil( Farbe: Farbe (0xFFFFFFFF), Schriftfamilie: 'PingFangSC-Semibold', Schriftgröße: 15, Schriftgewicht: FontWeight.w700 ), ) ), ) In H5 kann dies mit einer Zeile Stilcode erfolgen, in Flutter müssen Sie jedoch die Dekorationseigenschaft der Containerkomponente verwenden, um den Hintergrundfarbverlauf festzulegen. Entfernen Sie den Wasserwelleneffekt beim Scrollen nach unten in der Android-Scroll-KomponenteWenn einige unserer Unternehmen die Scroll-Komponente SingleChildScrollView in der Mitte der Seite verwenden, werden beim Herunterziehen Wasserwellen angezeigt. Meiner Meinung nach ist das sehr hässlich und beeinträchtigt das Erscheinungsbild der Seite. Wie kann man es also entfernen? Die spezifischen Vorgänge sind wie folgt: importiere „Paket: Flutter/Material.dart“; ///Passen Sie ein NoShadowScrollBehavior an, um den Wasserwelleneffekt der Android-Klasse NoShadowScrollBehavior extends ScrollBehavior { zu entfernen. @überschreiben Widget buildViewportChrome(BuildContext Kontext, Widget untergeordnetes Element, AxisDirection axisDirection) { Schalter (getPlatform(Kontext)) { Fall TargetPlatform.iOS: Fall TargetPlatform.macOS: Kind zurückgeben; Fall TargetPlatform.android: Fall TargetPlatform.fuchsia: Fall TargetPlatform.linux: Fall TargetPlatform.windows: returniere GlowingOverscrollIndicator( Kind: Kind, //Keine Wellen am Wasser anzeigen showLeading: false, //Die nachlaufenden Wasserwellen nicht anzeigen showTrailing: false, Achsenrichtung: Achsenrichtung, Farbe: Theme.of(Kontext).AkzentFarbe, ); } gibt null zurück; } } //ScrollConfiguration aufrufen( Verhalten: NoShadowScrollBehavior(), Kind: SingleChildScrollView( // Physik: NeverScrollableScrollPhysics(), Kind: Spalte( Kinder: <Widget>[ buildButtonRadio(Kontext), BuildCondition(Kontext), SizedBox (Höhe: 100,) ], ), ) ); Oben sind die Details der gängigen Techniken für die Flutter-Geschäftsentwicklung im Layout im vue.js-Stil aufgeführt. Weitere Informationen zu Layouttechniken im Flutter-Geschäftsentwicklungsstil finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Lösung für die Nichterreichbarkeit des Tencent Cloud Server Tomcat-Ports
1. Über den Dateiserver Wenn Sie in einem Projekt...
Inhaltsverzeichnis 1. Laden Sie das MySQL-Install...
Inhaltsverzeichnis Lösung 1 Lösung 2 Beim Erstell...
Einleitung Stellt einige einfache und praktische ...
Inhaltsverzeichnis Vorwort Was ist Deno? Vergleic...
CSS3 implementiert 2D-Ebenentransformation und vi...
1.1 Aufbau der Verzeichnisstruktur Dieser Vorgang...
1. Ein Container ist eine unabhängig laufende Anw...
stat-Funktion und stat-Befehl Erklärung von [inod...
Was ist Lastenausgleich? Wenn ein Domänenname auf...
Wenn Dateien von einem Prozess verwendet und vers...
Schritt 1: Signieren Sie ein vertrauenswürdiges S...
Verwenden Sie self:: oder __CLASS__, um eine stat...
In diesem Artikel wird der spezifische Code von j...
1. Zwei Möglichkeiten, den Zeichensatz der HTML-S...