Flutter - Implementing CSS radial gradients
You need to use the center property of the RadialGradient
to position the gradient.
Use the code below and it should give you the same design in Flutter as the CSS code:
gradient: RadialGradient(
center: Alignment(-0.8, -0.6),
colors: [
Color.fromRGBO(3, 235, 255, 1),
Color.fromRGBO(152, 70, 242, 1)
],
radius: 1.0,
),
PS: I came up with the values -0.8 and -0.6 from the docs:
Alignment(0.0, 0.0) represents the center of the rectangle. The distance from -1.0 to +1.0 is the distance from one side of the rectangle to the other side of the rectangle. Therefore, 2.0 units horizontally (or vertically) is equivalent to the width (or height) of the rectangle.
So that means 10% from your CSS code would correspond to -0.8, 20% would be -0.6, and so on.
How to convert css rules to flutter style
Do like this:
return Scaffold(
appBar: AppBar(title: Text("Title")),
body: Container(
padding: EdgeInsets.all(20),
width: double.infinity,
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.centerRight,
end: Alignment.centerLeft,
colors: [Color(0xff03737D), Color(0xff14373A)]
)
),
height: 60,
child: Text("Checking gradient bg", style: TextStyle(color: Colors.white)),
));
CSS output:
Flutter output:
How to apply Linear gradient on box decoration in flutter?
A solution would be to Stack your current Container
(with the LinearGradient
and the Container
child
) on top of another Container
defining the BoxShadow
and the DecorationImage
:
import 'package:flutter/material.dart';
void main() {
runApp(
MaterialApp(
title: 'Scan with Time',
home: Scaffold(
body: MyWidget(),
),
),
);
}
class MyWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
padding: EdgeInsets.all(10.0),
width: 240,
height: 480,
child: Stack(
children: [
Positioned.fill(
child: Container(
padding: EdgeInsets.all(10.0),
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(20)),
boxShadow: [
BoxShadow(
color: Colors.blueGrey,
blurRadius: 5,
offset: Offset(0, 7),
),
],
image: DecorationImage(
image: NetworkImage(
'https://upload.wikimedia.org/wikipedia/commons/thumb/7/79/Old_man_reading_news_paper_early_in_the_morning_at_Basantapur-IMG_6800.jpg/1280px-Old_man_reading_news_paper_early_in_the_morning_at_Basantapur-IMG_6800.jpg'),
fit: BoxFit.cover,
),
),
),
),
Positioned.fill(
child: Container(
padding: EdgeInsets.all(10.0),
decoration: BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(20)),
gradient: LinearGradient(
colors: [
Colors.red,
Colors.transparent,
Colors.transparent,
Colors.red
],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
stops: [0, 0, 0.6, 1],
),
),
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.end,
children: <Widget>[
Container(
//place this container to right side
constraints: BoxConstraints(maxWidth: 240.0),
padding: EdgeInsets.all(5),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(8.0),
color: Colors.white.withOpacity(0.8)),
child: Row(
children: [
Icon(
Icons.directions_bike,
color: Colors.red,
),
Text(
'5',
style: TextStyle(
color: Colors.red,
fontWeight: FontWeight.bold,
fontSize: 17.0,
),
),
],
),
),
//display event name, start/end dates times and duration in a column
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text('NAME',
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.bold,
fontSize: 20.0)),
SizedBox(
height: 3.0,
),
],
),
],
),
),
),
],
),
);
}
}
wrapping Scaffold with Container for gradient background, How to set gradient to container background in flutter?
In Your Code - Under Scaffold
add - backgroundColor: Colors.transparent,
child: Scaffold(
backgroundColor: Colors.transparent,
appBar: AppBar(
..
Related Topics
How to Make a Full-Width Jumbotron
How to Center Text Horizontally and Vertically in Cojunction with 'Writing-Mode: Sideways-Lr'
Horizontally Center Small Triangle at Bottom of Div and Resize Responsively and Proportionately
How to Automatically Add Browser Prefix to CSS3 Properties
How to Add Multiple Browser Specific Values into a CSS Style in React
CSS Background to Stretch to Window Bottom
Stop Firefox Rendering Inline Colours in Rgb() Form
How to Set a Javafx Static Property in CSS
Flutter - Implementing CSS Radial Gradients
CSS Selector Compare 2 Attributes
3D-Like Hover Effect on Button
Characters from Embedded Google Fonts Not Showing Up in Firefox 4 and Ie9
Unwanted Bolding Added to Font in Browsers
CSS Table Display Differences - Chrome Vs Firefox
Javafx Tab Fit Full Size of Header