在黑暗模式下使用颤动切换图像
Switch images on dark mode with flutter
我想知道如何实现暗模式和亮模式切换图像。
我不想在应用程序上切换。只需在 iOS 或 Android.
中的设置中切换暗模式
这里是灯光模式的示例代码。
我想知道如何更改或添加代码以将 logo.png 切换为 darkmode_logo.png.
*darkmode_logo.png 用于暗模式下的徽标。
V/r,
import 'package:flutter/material.dart';
class TopPage extends StatefulWidget {
const TopPage({Key key}) : super(key: key);
@override
_TopPageState createState() => _TopPageState();
}
class _TopPageState extends State<TopPage> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Theme.of(context).backgroundColor,
drawer: SlideMenu(),
appBar: AppBar(
centerTitle: true,
title: Image.asset(
'assets/images/header_icn/logo.png',
fit: BoxFit.cover,
),
),
body: Container(),
);
}
}
使用主题Brightness
属性检查主题模式。
final isDarkMode = Theme.of(context).brightness == Brightness.dark;
然后使用isDarkMode
更改图像。
Image.asset(
isDarkMode
? 'assets/images/header_icn/darkmode_logo.png'
: 'assets/images/header_icn/logo.png',
fit: BoxFit.cover,
)
我想知道如何实现暗模式和亮模式切换图像。 我不想在应用程序上切换。只需在 iOS 或 Android.
中的设置中切换暗模式这里是灯光模式的示例代码。 我想知道如何更改或添加代码以将 logo.png 切换为 darkmode_logo.png.
*darkmode_logo.png 用于暗模式下的徽标。
V/r,
import 'package:flutter/material.dart';
class TopPage extends StatefulWidget {
const TopPage({Key key}) : super(key: key);
@override
_TopPageState createState() => _TopPageState();
}
class _TopPageState extends State<TopPage> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Theme.of(context).backgroundColor,
drawer: SlideMenu(),
appBar: AppBar(
centerTitle: true,
title: Image.asset(
'assets/images/header_icn/logo.png',
fit: BoxFit.cover,
),
),
body: Container(),
);
}
}
使用主题Brightness
属性检查主题模式。
final isDarkMode = Theme.of(context).brightness == Brightness.dark;
然后使用isDarkMode
更改图像。
Image.asset(
isDarkMode
? 'assets/images/header_icn/darkmode_logo.png'
: 'assets/images/header_icn/logo.png',
fit: BoxFit.cover,
)