Hallo Abror, das war sehr hilfreich für mich. Ich danke dir sehr!
Jkoech
196
Sie können das RaisedButton-Widget verwenden. Das Widget für erhöhte Schaltflächen verfügt über eine Form-Eigenschaft, die Sie wie im folgenden Snippet gezeigt verwenden können.
Vielen Dank! Ich suche nach der Antwort, die Sie erwähnt haben.
Pramesh Bhalala
28
Sie können einfach verwenden RaisedButtonoder Sie können verwenden InkWell, um benutzerdefinierte Schaltflächen und auch Eigenschaften wie onDoubleTap, onLongPressund etc.:
Wenn Sie verwenden möchten splashColor, highlightColorImmobilien - InkWellWidget, verwenden MaterialWidget als das übergeordnete InkWellWidget anstelle des Behälters der Dekoration (Löschen Dekoration Eigentum). Lesen Sie warum? hier .
Wenn Sie das InkWellBild an den abgerundeten Ecken befestigen möchten , müssen Sie borderRadius: BorderRadius.circular(10.0)es dem InkWellWidget hinzufügen , da es sonst an die Kanten des Begrenzungsrechtecks gelangt.
Victor Rendina
@ VictorRendina Ich habe nach einer Möglichkeit gesucht, die Wellen abzurunden, danke für deinen Kommentar. Fügen Sie dies als spärliche Antwort auf Fragen zum Tintenfass hinzu, da viele dies nicht erwähnen.
Sudesh
5
Mit dem folgenden Code können Sie abgerundete Schaltflächen mit einer Verlaufsfarbe erstellen.
Container(
width:130.0,
height:43.0,
decoration:BoxDecoration(
borderRadius:BorderRadius.circular(30.0),
gradient:LinearGradient(// Where the linear gradient begins and ends
begin:Alignment.topRight,
end:Alignment.bottomLeft,// Add one stop for each color. Stops should increase from 0 to 1
stops:[0.1,0.9],
colors:[// Colors are easy thanks to Flutter's Colors class.Color(0xff1d83ab),Color(0xff0cbab8),],),),
child:FlatButton(
child:Text('Sign In',
style:TextStyle(
fontSize:16.0,
fontFamily:'Righteous',
fontWeight:FontWeight.w600,),),
textColor:Colors.white,
color:Colors.transparent,
shape:RoundedRectangleBorder(borderRadius:BorderRadius.circular(30.0)),
onPressed:(){},),);
Sie sollten sich wahrscheinlich insbesondere mit dieser Seite der Dokumente vertraut machen: Ecken abrunden .
Die Dokumente zeigen Ihnen, wie Sie das Styling einer Komponente und das entsprechende Styling in CSS ändern können, wenn Sie damit bereits vertraut sind.
Sie können diesen Code für eine transparente, abgerundete Schaltfläche verwenden, indem Sie eine transparente Farbe an die Farbeigenschaft im Inneren übergeben BoxDecoration. z.B.color: Colors.transparent. Beachten Sie außerdem, dass diese Schaltfläche nur die Widgets Containerund verwendet GestureDetector.
Im Flutter- Container()Widget können Sie Ihr Container()Widget stylen. Mit dem Widget können Sie einen Rand oder eine abgerundete Ecke eines Widgets festlegen
Wenn Sie eine beliebige Art von Styling und Dekoration festlegen möchten, fügen Sie dieses Widget in das Container()Widget ein, das viele Eigenschaften für die Dekoration bietet.
Während dieser Code die Frage lösen kann, einschließlich einer Erklärung, wie und warum dies das Problem löst, würde dies wirklich dazu beitragen, die Qualität Ihres Beitrags zu verbessern, und wahrscheinlich zu mehr Up-Votes führen. Denken Sie daran, dass Sie in Zukunft die Frage für die Leser beantworten, nicht nur für die Person, die jetzt fragt. Bitte bearbeiten Sie Ihre Antwort, um Erklärungen hinzuzufügen und anzugeben, welche Einschränkungen und Annahmen gelten.
RaisedButton
oderInkWell
Antworten:
1. Lösungszusammenfassung
Sie können
shape
fürFlatButton
und verwendenRaisedButton
.2. Abgerundeter Knopf
Quadratischer Knopf
Vollständiges Beispiel
quelle
Sie können das RaisedButton-Widget verwenden. Das Widget für erhöhte Schaltflächen verfügt über eine Form-Eigenschaft, die Sie wie im folgenden Snippet gezeigt verwenden können.
quelle
Es gibt viele Möglichkeiten, dies zu tun. Ich liste hier einige auf.
(1) Verwenden
RoundedRectangleBorder
(2) Verwenden
ClipRRect
(3) Verwenden
ClipOval
(4) Verwenden
ButtonTheme
(5) Verwenden
StadiumBorder
quelle
Sie können einfach RaisedButton verwenden
Ausgabe:
Weitere Infos: RSCoder
quelle
Sie können einfach verwenden
RaisedButton
oder Sie können verwendenInkWell
, um benutzerdefinierte Schaltflächen und auch Eigenschaften wieonDoubleTap
,onLongPress
undetc
.:Wenn Sie verwenden möchten
splashColor
,highlightColor
Immobilien -InkWell
Widget, verwendenMaterial
Widget als das übergeordneteInkWell
Widget anstelle des Behälters der Dekoration (Löschen Dekoration Eigentum). Lesen Sie warum? hier .quelle
InkWell
Bild an den abgerundeten Ecken befestigen möchten , müssen SieborderRadius: BorderRadius.circular(10.0)
es demInkWell
Widget hinzufügen , da es sonst an die Kanten des Begrenzungsrechtecks gelangt.Mit dem folgenden Code können Sie abgerundete Schaltflächen mit einer Verlaufsfarbe erstellen.
quelle
Sie sollten sich wahrscheinlich insbesondere mit dieser Seite der Dokumente vertraut machen: Ecken abrunden .
Die Dokumente zeigen Ihnen, wie Sie das Styling einer Komponente und das entsprechende Styling in CSS ändern können, wenn Sie damit bereits vertraut sind.
quelle
Sie können diesen Code für eine transparente, abgerundete Schaltfläche verwenden, indem Sie eine transparente Farbe an die Farbeigenschaft im Inneren übergeben
BoxDecoration
. z.B.color: Colors.transparent
. Beachten Sie außerdem, dass diese Schaltfläche nur die WidgetsContainer
und verwendetGestureDetector
.quelle
Wenn jemand nach einem vollständigen runden Knopf sucht, dann habe ich es auf diese Weise erreicht.
quelle
Sie können jederzeit die Materialschaltfläche verwenden, wenn Sie die Material-App als Haupt-Widget verwenden.
quelle
Wenn Sie eine beliebige Art von Styling und Dekoration festlegen möchten, fügen Sie dieses Widget in das
Container()
Widget ein, das viele Eigenschaften für die Dekoration bietet.quelle
Um eine beliebige Form in You'r Button zu verwenden, stellen Sie sicher, dass Sie den gesamten Code im Button-Widget ausführen
Wenn Sie möchten, dass das Quadrat "BorderRadius.circular" (0.0) verwendet, wird es automatisch zum Quadrat
der Knopf so`
Hier ist der gesamte Quellcode für den Bildschirm "Give UI"
quelle
Hier ist eine andere Lösung
quelle
Hier ist der Code für Ihr Problem. Sie müssen nur einen einfachen Container mit Randradius in der Boxdekoration nehmen.
quelle
quelle