Ha egy doboz árnyékot szeretne alkalmazni egy TabBar
in -re Flutter, csomagolja be, Container
és használja a BoxDecoration
tulajdonságot. Íme egy példa:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return DefaultTabController(
length: 3,
child: Scaffold(
appBar: AppBar(
title: Text('TabBar with Shadow'),
bottom: TabBar(
tabs: [
Tab(text: 'Tab 1'),
Tab(text: 'Tab 2'),
Tab(text: 'Tab 3'),
],
),
),
body: TabBarView(
children: [
Container(color: Colors.red),
Container(color: Colors.green),
Container(color: Colors.blue),
],
),
),
);
}
}
Ha árnyékeffektust szeretne hozzáadni a -hoz TabBar
, csomagolja be a TabBar
-ba Container
, és alkalmazza a következőt BoxDecoration
:
Container(
decoration: BoxDecoration(
boxShadow: [
BoxShadow(
color: Colors.grey.withOpacity(0.5),
spreadRadius: 5,
blurRadius: 7,
offset: Offset(0, 3), // changes position of shadow
),
],
),
child: TabBar(
tabs: [
Tab(text: 'Tab 1'),
Tab(text: 'Tab 2'),
Tab(text: 'Tab 3'),
],
),
),
Ebben a példában BoxShadow
az árnyékhatás létrehozására szolgál a TabBar
. Testreszabhatja a színt, a szórási sugarat, az elmosódási sugarat és az eltolást, hogy elérje a kívánt árnyék megjelenését.
Ne felejtse el beállítani az árnyék tulajdonságait a tervezési követelményeknek megfelelően.
Kérjük, vegye figyelembe, hogy az árnyék alkalmazása nem biztos, hogy működik, ha AppBar
már használja a magasságot. Ilyen esetekben előfordulhat, hogy egyéni widgeteket kell használnia, vagy módosítania kell a tervezést, hogy mindkét effektust alkalmazza.