関係を継続する1:
BoxDecoration:フレーム、角丸、シェーディング、成形、グラデーション、背景画像を実現
ShapeDecoration:それぞれ、指定された色と幅を達成するための四辺、ボトムライン、エッジの色の四角形、円形のエッジの色、スタジアム(垂直楕円)、角度(8角)側色
FlutterLogoDecoration:フラッター画像を実現
UnderlineTabindicator:下線
図2は、説明
のAndroid shape.xml、様々なカスタム背景(境界、角丸、シェーディング、成形、グラデーション、背景画像)に対応する装飾背景オブジェクト。
3つのBoxDecoration例:
コンストラクタ:
BoxDecoration CONST({ this.color、//背景 this.image、//画像 this.border、エッジの色 this.borderRadius、//丸い角 this.boxShadow、//影 this.gradient、//グラデーション this.backgroundBlendMode //モードを混合 this.shape = BoxShape.rectangle、形状@ })
国境+ 3.1フィレット:
装飾:新しい新しいBoxDecoration( 境界:新規新しいBorder.all(色:カラー(を0xFFFF0000)、幅:0.5)、色及びエッジ側幅// 色:カラー(0xFF9E9E9E)、//背景 // borderRadius:新しいBorderRadius.circular ((20.0))、//丸い角 borderRadius:新しいBorderRadius.vertical(トップ:Radius.elliptical (20、50))、// サイドフィレットの大きさを制御することができます )、
3.2シャドウ:
装飾:新しい新しいBoxDecoration( 境界:新規新しいBorder.all(色:カラー(を0xFFFF0000)、幅:0.5)、色及びエッジ側幅// //影が2層、一つの緑、黄色一オフセットシャドウの位置を生成します決定、層の影のぼかしは、(透明一層びまん性大)blurRadiusシャドウブラーspreadRadiusの大きさによって決定される、サイズによって決まる [boxShadow(色:カラー(0x99FFFF00)、オフセット:オフセット(5.0、5.0)、blurRadius:10.0、boxShadow spreadRadius:2.0)、BoxShadow(色:カラー(0x9900FF00)、オフセット:オフセット(1.0、1.0))、BoxShadow(色:カラー(0xff0000ff))] )、
3.3形状(円形及び矩形):
装飾:新しい新しいBoxDecoration( 境界:新規新しいBorder.all(色:カラー(0xFFFFFF00)、幅:0.5)、色及びエッジ側幅// 色:カラー(0xFF9E9E9E)、//背景 //形状:BoxShape.circle、円形borderRadiusを使用する場合//、ラウンド使用することができない 形状を:BoxShape.rectangle、//デフォルトでは矩形である borderRadius:新しいBorderRadius.circular((20.0) )、//丸い角 )
3.4勾配(環状、走査、リニア):
装飾:新しい新しいBoxDecoration( 境界:新規新しいBorder.all(色:カラー(0xFFFFFF00)、幅:0.5)、色及びエッジ側幅// //環状レンダリング 勾配:RadialGradient(色:[カラー (0xFFFFFF00)、カラー(0xFF00FF00 )、カラー(0xFF00FFFF)]、RADIUS :. 1、TILEMODE:TileMode.mirror) //勾配走査 //勾配:SweepGradient(色:[カラー(0xFFFFFF00)、カラー(0xFF00FF00)、カラー(0xFF00FFFF)]、startAngleの: 0.0、endAngle:3.14 * 1)。 //線形勾配 //勾配:てLinearGradient(色:[カラー(0xFFFFFF00)、カラー(0xFF00FF00)、カラー(0xFF00FFFF)]、開始:FractionalOffset(1、0)、終了:FractionalOffset( 0、1)) )
3.4背景画像:
装飾:新しい新しいBoxDecoration( 境界:新規新しいBorder.all(色:カラー(0xFFFFFF00)、幅:0.5)、色及びエッジ側幅// 画像:新しい新しいDecorationImage( 画像:新しい新しいNetworkImage(「HTTPS://avatar.csdn。ネット/ 8/9 / A / 3_chenlove1.jpg ')、// ネットワークグラフィックス //画像:新assetImage('グラフィックス / background.png「)、 ローカルの画像 フィット:BoxFit.fill //塗りつぶし // centerSlice:新しいですRect.fromLTRB(270.0、180.0、1360.0、 730.0)、// 固定サイズ ) )、
4つのShapeDecoration例:
コンストラクタ:
CONST ShapeDecoration({ this.color、 this.image、 this.gradient、 this.shadowsは 、this.shapeを@required })
形状に加えて、他のBoxDecorationと一致し、研究を形作ります:
装飾:新しい新しいShapeDecoration( 色:カラー(0xFFFF00FF)、背景// 四辺部の//均一な色と幅 形状:Border.all(色:カラー(0xFF00FFFF)、スタイル:BorderStyle.solid、幅:2) // 4エッジは色と幅を、指定された場合にのみ底と一貫性のある結果UnderlineInputBorder //形状:ボーダー(左B、:トップ:B、底:B、右B) //一番下の行 //形状:UnderlineInputBorder(borderSide。 BorderSide(色:色(0xFFFFFFFFの)、スタイル:BorderStyle.solid、幅:2)) //矩形色の側 //形状:RoundedRectangleBorder(borderRadius:BorderRadius.all (Radius.circular(10))、側:BorderSide(色:カラー(0xFFFFFFFFの)、スタイル:BorderStyle.solid、幅:2)) //色丸いエッジ //形状:CircleBorder(側:BorderSide(色:カラー(0xFFFFFF00)、スタイル:BorderStyle.solid、幅:2)) //体育场(竖向椭圆) //形状:StadiumBorder(側:BorderSide(幅:2、スタイル:BorderStyle.solid、色:カラー(0xFF00FFFF)) //角形(八边角)边色 //形状:BeveledRectangleBorder(borderRadius:BorderRadius.all(Radius.circular(10))、側:BorderSide(色:カラー(0xFFFFFFFFの)、スタイル:BorderStyle.solid、幅:2)) )、
例5 FlutterLogoDecoration:
コンストラクタ:
CONST FlutterLogoDecoration({ this.lightColor =定数カラー(0xFF42A5F5)、// Colors.blue [400] this.darkColor =定数カラー(0xFF0D47A1)、// Colors.blue [900] this.textColor =定数カラー(0xFF616161) this.style = FlutterLogoStyle.markOnly、 this.margin = EdgeInsets.zero、 })
この問題は解決されていない、フラッターのロゴ、開発無駄!
6つのUnderlineTabindicator例:
コンストラクタ:
CONST UnderlineTabIndicator({ this.borderSide =定数BorderSide(幅:2.0、色:Colors.white)、 this.insets = EdgeInsets.zero、 })
これは、比較的簡単に、値がインセットを設定することができる下線が引かれている(下線高い基板制御、左右の余白)
装飾:新しいUnderlineTabIndicator( borderSide:BorderSide(幅:2.0、色:Colors.white)、 インセット:EdgeInsets.fromLTRB(0,0,0,10) )、
セットのみ左の境界文言
コンテナ( 装飾:BoxDecoration( ボーダー:ボーダー( 左:BorderSide( 幅:0.5、//幅 色:Colors.red、//境界線の色 )、 )、 )、 )