A、フラッタ導入ボタンコンポーネント
フラッターは、Buttonコンポーネントのとてもたくさんを持っている一般的なコンポーネントは、ボタンがあります。RaisedButton、FlatButton、
IconButton、OutlineButton、ButtonBarコントロール、FloatingActionButton等。
RaisedButtonは:実際には、ボタンを突き出し、材料設計スタイルボタン
FlatButton:フラットボタン
OutlineButton:ワイヤーフレームボタン
IconButton:アイコンボタン
ButtonBar:ボタンのグループ
FloatingActionButton:フローティングボタン
二、プロパティのいくつかのフラッターボタンアセンブリ
onPressed VoidCallbackは、一般的に無効に関連スタイル表示されるボタンを無効にするにはnullを渡し、ボタンが押されたときにコールバックは、受信方法をトリガされ、必須パラメータ法を受け、
子ウィジェット
textColor色テキストの色
カラーカラーボタンの色
DisabledColor色のカラーボタンが無効になっています
テキストの色ボタンがときdisabledTextColor色無効になっています
splashColorカラー水波ときにボタンの色
highlightColorカラーをクリック(押し)ボタンの色ボタンの後
標高二重影、シャドウ大きい値範囲の範囲
パディングパディング
形状は、ボタンの形状を提供しました
形状:RoundedRectangleBorder(
borderRadius:
BorderRadius.circular(10)、
)
形状:CircleBorder(
サイド:BorderSide(
色:Colors.white、
)
)
ケースコード
インポート'パッケージ:フラッター/ material.dart';
クラスButtonDemoPageはStatelessWidget {延び
スーパー(キー:キー)CONST ButtonDemoPage({キーキーを})。
@Override
ウィジェットビルド(BuildContextコンテキスト){
リターン足場(
アプリケーションバー(:アプリケーションバー
タイトル:テキスト( "按钮演示页面")、
アクション<ウィジェット> [
IconButton(
アイコン:アイコン(Icons.settings)、
onPressed:(){
} 、
)
]、
)、
ボディ:カラム(
mainAxisAlignment:MainAxisAlignment.center、
子供:<ウィジェット> [
行(
mainAxisAlignment:MainAxisAlignment.center、
子供<ウィジェット> [
RaisedButton(
子:テキスト( '押しボタン')、
onPressed:(){
印刷( "プッシュボタン");
}
)、
SizedBox(幅:. 5)、
RaisedButton(
子:テキスト( 'カラーボタン')、
色:Colors.blue、
の、textColor:Colors.white、
onPressed:(){
プリント( "着色ボタン");
}
)、
SizedBox(幅:. 5)、
RaisedButton(
子:テキスト( 'シャドウボタン')、
カラー:Colors.blue、
の、textColor:Colors.white、
標高:20である、
onPressed:(){
プリント( "斜線ボタン");
}
)、
SizedBox(幅: 。5)、
RaisedButton.icon(
アイコン:アイコン(Icons.search)、
ラベル:テキスト( 'アイコンボタン')、
色:Colors.blue、
の、textColor:Colors.white、
// onPressed:ヌル、
onPressed:(){
印刷( "ボタンアイコン");
})
]
)、
SizedBox(高さ:10)、
行(
mainAxisAlignment:MainAxisAlignment.center、
子供<ウィジェット>
コンテナ(
高さ:50、
幅:400、
子供:RaisedButton(
チャイルド:テキスト( '幅高さは')、
カラー:Colors.blue、
の、textColor:Colors.white、
標高:20である、
onPressed:(){
プリント( "幅高さ");
}
)、
)
]、
)、
SizedBox(高さ:10)、
行(
mainAxisAlignment:MainAxisAlignment.center、
子供:<ウィジェット> [
拡張(
子:コンテナ(
高さ:60、
マージン:EdgeInsets.all(10)、
子供:RaisedButton (
子:テキスト( '自适应按钮')、
色:Colors.blue、
の、textColor:Colors.white、
標高:20、
onPressed:(){
プリント( "適応ボタン");
}
)
)
)
]
)、
SizedBox(高さ:10)、
行(
mainAxisAlignment:MainAxisAlignment.center、
子供<ウィジェット> [
RaisedButton(
子:テキスト(「フィレットボタン「)、
カラー:Colors.blue、
の、textColor:Colors.white、
標高:20は、
形状:RoundedRectangleBorder(
borderRadius:BorderRadius.circular(10))、
onPressed:(){
印刷( "ボタンフィレット");
})、
コンテナ(
高さ:80、
子供:RaisedButton(
子:テキスト( 'ラジオボタン')、
色:Colors.blue、
の、textColor:Colors.white、
標高:20は、ある
splashColor:Colors.red、
形状:
CircleBorder(横:BorderSide(カラー:Colors.white))、
onPressed:(){
プリント( "ラジオボタン");
})
)、
FlatButton(
子:テキスト( "按钮")、
色:Colors.blue、
の、textColor:Colors.yellow、
onPressed:(){
プリント( 'FlatButton');
}
)、
SizedBox(幅:10)、
OutlineButton(
子:テキスト( "按钮")、
//色:Colors.red、//没有效果
//の、textColor:Colors.yellow、
onPressed:(){
プリント( 'FlatButton');
})
]
)、
SizedBox(高さ:10)、
行(
mainAxisAlignment:MainAxisAlignment.center、
子供:<ウィジェット> [
拡張(
子:コンテナ(
マージン:EdgeInsets.all(20)、
高さ:50、
子供:OutlineButton(子:テキスト( "注册「)、onPressed:(){}) ) )
] )、 ロー( mainAxisAlignment:MainAxisAlignment.end、 子供<ウィジェット> のButtonBar( 子供<ウィジェット> [
RaisedButton(
子:テキスト( 'ログイン')、
カラー:Colors.blue、
の、textColor:Colors.white、
標高:20は、ある
onPressed:(){
プリント( "幅高さ");
}
)、
RaisedButton(
子:テキスト( '登録')、
色:Colors.blue、
の、textColor:Colors.white、
標高:20である、
onPressed:(){
プリント( "幅高さ");
}
)、
MyButtonという(テキスト: "カスタムボタン"、高さ:60.0、幅:100.0、押下:(){
プリント(「カスタムボタン「);
})
]
)
]
)
]
));
}
}
/ /カスタムボタンコンポーネント
クラス延びMyButtonというStatelessWidget {
最終テキスト、
最終が押され、
最終的な幅は、
最終的な高さ、
MyButtonというCONST(This.Text = {「」、this.pressed =ヌル、this.width = 80、30 = this.height });
@Override
ウィジェットビルド(BuildContextコンテキスト){
リターンコンテナ(
高さ:this.height、
幅:this.width、
子供:RaisedButton(
子:テキスト(this.text)、
onPressed:this.pressed、
)、
);
}
}