我想根据背景图像更改文本(和图标)颜色以提高可见性。
我试过: 使用palette_generator包,检查背景图像的主色,并 从flutter_statusbarcolor包中使用WhiteForgroundForColor函数(返回一个bool)为我的文本(和图标)颜色选择黑色或白色。
问题:有时主色会变成空。在我的测试中,这种情况发生在黑色和白色,我不知道有什么方法可以找出哪一种。
Future<bool> useWhiteTextColor(String imageUrl) async {
PaletteGenerator paletteGenerator =
await PaletteGenerator.fromImageProvider(
NetworkImage(imageUrl),
// Images are square
size: Size(300, 300),
// I want the dominant color of the top left section of the image
region: Offset.zero & Size(40, 40),
);
Color dominantColor = paletteGenerator.dominantColor?.color;
// Here's the problem
// Sometimes dominantColor returns null
// With black and white background colors in my tests
if (dominantColor == null) print('Dominant Color null'); …
Run Code Online (Sandbox Code Playgroud) 我在https://pub.dartlang.org/packages/charts_flutter 中使用 chart_flutter 插件,我想更改我的 TimeSeriesChart 的线条颜色?
我现在的代码是这样的:
final chartdata = [
charts.Series<VolumePerDay, DateTime>(
id: 'Workout',
colorFn: (_, __) => charts.MaterialPalette.lime.shadeDefault,
// colorFn: (_, __) => Theme.of(context).accentColor,
domainFn: (VolumePerDay workout, _) => workout.time,
measureFn: (VolumePerDay workout, _) => workout.volume,
data: data,
)
];
return charts.TimeSeriesChart(
chartdata,
animate: false,
);
Run Code Online (Sandbox Code Playgroud)
我认为更改 colorFn 属性会更改颜色,但是如果我使用 MaterialPalette 注释该行并取消注释 Theme 颜色行,则会出现错误。如何使用颜色代码将图表的线条颜色设置为我选择的颜色?
我正在使用Firebase Cloud Firestore,我想修改我的规则以限制用户查询集合.
这不应该被允许:
firestore().collection("users").get()
Run Code Online (Sandbox Code Playgroud)
但是应该允许这样做:
firestore().collection("users").doc("someUserId").get()
Run Code Online (Sandbox Code Playgroud)
目前,我的规则如下:
match /users/{userId} {
allow read;
}
Run Code Online (Sandbox Code Playgroud)
但是此规则允许查询"用户"集合.
如何允许单个文档获取,但不允许收集查询?
javascript firebase google-cloud-firestore firebase-security-rules
我想创建一个圆形图像,从网络中提取图像,并在Flutter中缓存.
这是我从网络中获取的圆形图像但未缓存图像的代码.
new Container(
width:80.0,
height: 80.0,
decoration: new BoxDecoration(
shape: BoxShape.circle,
image: new DecorationImage(
image: new NetworkImage('https://pbs.twimg.com/profile_images/945853318273761280/0U40alJG_400x400.jpg'),
),
),
),
Run Code Online (Sandbox Code Playgroud)
现在我找到了一个用于从网络中获取,缓存和显示图像的小部件
new CachedNetworkImage(imageUrl: 'https://pbs.twimg.com/profile_images/945853318273761280/0U40alJG_400x400.jpg')
Run Code Online (Sandbox Code Playgroud)
但是当我用这个CachedNetworkImage替换NetworkImage小部件时,它给出了一个错误,说NetworkImage不是类型图像.
如何实现可以缓存的圆形图像?
编辑:我按照答案中的建议尝试了这个,但仍然得到了同样的错误:参数类型'CachedNetworkImage'无法分配给参数类型'DecorationImage'.
decoration: new BoxDecoration(
shape: BoxShape.circle,
image: new CachedNetworkImage(image:
'https://pbs.twimg.com/profile_images/945853318273761280/0U40alJG_400x400.jpg'),
),
Run Code Online (Sandbox Code Playgroud) 我正在使用FadeInImage
Widget 在我的应用程序中显示网络图像。由于我想使用 FadeInImage 的占位符属性,所以我不能使用NetworkImage
或Image.Network
Widget。
现在我想FadeInImage
循环,所以我尝试使用以下选项。
FadeInImage
在内部Container
使其成为圆形,但该DecorationImage
属性不允许FadeInImage
CircleAvatar
但 backgroundImage 属性CircleAvatar
不允许FadeInImage
cached_network_image
颤振库但面临同样的问题ClipRRect
用来使它循环但仍然不起作用以下是我的代码
Container(
width: 50.0,
height: 50.0,
child: ClipRRect(
borderRadius: BorderRadius.circular(25.0),
child: FadeInImage(
placeholder: AssetImage("images/alex.jpg"),
image: NetworkImage(
"https://cdn1.thr.com/sites/default/files/imagecache/scale_crop_768_433/2018/02/gettyimages-862145286_copy_-_h_2018.jpg")),
),
);
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建值和名称数组。我不知道这样做的正确方法是什么。
var send=[];
send=[
'latitud': widget.lat;
];
Run Code Online (Sandbox Code Playgroud)
有人知道如何创建带有索引和值的数组吗?
我试图弄清楚如何在 supabase 中实现查询:
模式
CREATE TABLE cars
(
id SERIAL PRIMARY KEY,
brand TEXT
);
CREATE TABLE stores
(
id SERIAL PRIMARY KEY,
car INT REFERENCES car(id),
name TEXT
);
Run Code Online (Sandbox Code Playgroud)
我想要获取所有出售品牌“x”汽车的商店
在 Supabase 中我可以这样过滤:
let { data: stores } = await supabase
.from('stores')
.select("*")
.eq('name', 'Ford car shop')
// Returns
{
id: 123456,
car:"Ford",
name:"Ford car shop"
}
Run Code Online (Sandbox Code Playgroud)
或者像这样加入:
let { data: stores } = await supabase
.from('stores')
.select(`
*,
cars (
brand
)
`)
.eq('name', 'Ford car shop')
// …
Run Code Online (Sandbox Code Playgroud) 这是我的代码,从这里复制:
SliverAppBar(
expandedHeight: 150.0,
flexibleSpace: const FlexibleSpaceBar(
title: Text('Available seats'),
),
actions: < Widget > [
IconButton(
icon: const Icon(Icons.add_circle),
tooltip: 'Add new entry',
onPressed: () { /* ... */ },
),
]
)
Run Code Online (Sandbox Code Playgroud)
但我需要添加一个Drawer
. 我怎样才能做到这一点?
我正在尝试在 Flutter 中重建我的应用程序。
将java android应用程序转换为flutter
我更换了图标,但如何创建一个Drawer
?
leading: IconButton(icon: Icon( Icons.menu ),onPressed: ()=>{},)
Run Code Online (Sandbox Code Playgroud)
我的完整代码
@override
Widget build(BuildContext context) {
return NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[
SliverAppBar(
leading: IconButton(
icon: Icon(Icons.menu),
onPressed: () => {},
), …
Run Code Online (Sandbox Code Playgroud) 我想将我的对象放在堆栈的右上角。这就是我所拥有的。我知道如果我将 all(LTRB) 设置为 0.0,图像将放置在中心。有没有更简单的方法可以将图像放在右上角?
Widget _buildRemoveIcon()
{
return Positioned(
top:0.0,
left:60.0,
right: 0.0,
bottom:0.0,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: new IconButton(
icon: Icon(
Icons.cancel,
color: Colors.red,
),
onPressed: () {
}), //
),
);
}
Run Code Online (Sandbox Code Playgroud) 使用 Supabase 时,是否有一种干净/简单的方法可以删除所有关联记录以及某个项目?假设我有帖子,并且一个帖子可以有很多评论。当我删除帖子时,我也想删除评论。
基本上就像dependend: :destroy
Rails 中的东西。
const { data, error } = await supabase
.from('posts')
.delete()
.match({ id: 123 })
.options({ destroyDependent: true }) // set some option that tells Supabase to delete all associated records as well.
Run Code Online (Sandbox Code Playgroud)