我目前正在使用 Flutter 包 intro_slider 為我的應用程式制作一個 3 幻燈片長的 Intro Slider。一切都完美無瑕,看起來很完美,但是由于我決定使用自定義 png 影像作為我的背景影像,因此該包似乎以極深的顏色顯示影像。
在我附上的圖片中,我展示了有效的問題。最上面的一個(使用 centerWidget 顯示)是預期的影像,應該以完全相同的顏色顯示。背面有背景影像,自動變暗。
我找不到其他人談論這個問題,希望有人找到“解決”它的方法。有沒有辦法阻止影像變暗?
提前致謝。

我目前嘗試過:
- 更改影像擴展名并重試。
- 洗掉除背景影像之外的所有內容(我認為影像變暗是因為它上面的專案)
這是我為幻燈片撰寫的代碼:
主要的
void main() {
runApp(const MyApp());
}
// Main
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Goals App',
debugShowCheckedModeBanner: false,
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: IntroScreen(),
);
}
}
介紹螢屏
class IntroScreen extends StatefulWidget {
const IntroScreen({Key? key}) : super(key: key);
@override
IntroScreenState createState() => IntroScreenState();
}
class IntroScreenState extends State<IntroScreen> {
List<Slide> slides = [];
@override
void initState() {
super.initState();
slides.add(Slide(
backgroundImage: 'assets/images/intro_first_slide.png',
centerWidget:
Image(image: AssetImage('assets/images/intro_first_slide.png')),
));
}
Widget renderNextBtn() {
return const Icon(
Icons.navigate_next,
color: Colors.white,
size: 35.0,
);
}
Widget renderDoneBtn() {
return const Icon(
Icons.done,
color: Colors.white,
size: 35.0,
);
}
Widget renderSkipBtn() {
return const Icon(
Icons.skip_next,
color: Colors.white,
size: 35.0,
);
}
@override
Widget build(BuildContext context) {
return IntroSlider(
// List Slides
slides: slides,
// Skip button
// renderSkipBtn: renderSkipBtn(),
// Next button
renderNextBtn: renderNextBtn(),
// Done button
renderDoneBtn: renderDoneBtn(),
// Dot indicator
colorDot: Colors.white,
colorActiveDot: Colors.grey[300],
sizeDot: 13.0,
// show/hide status bar
hideStatusBar: true,
backgroundColorAllSlides: Colors.grey,
// Scrollbar
verticalScrollbarBehavior: scrollbarBehavior.HIDE,
);
}
}
uj5u.com熱心網友回復:
也許這就是你要找的? https://pub.dev/packages/intro_slider#slide-object-properties一直在屬性串列的底部:
backgroundBlendMode BlendMode? BlendMode.darken Background tab image filter blend mode
大概是這樣
slides.add(
Slide(
backgroundImage: 'assets/images/intro_first_slide.png',
centerWidget: Image(
image: AssetImage('assets/images/intro_first_slide.png'),
),
backgroundBlendMode: BlendMode.srcOver // <- try this
),);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/407670.html
標籤:
