Aby zastosować cień prostokątny do a TabBar
in Flutter, możesz zawinąć go w a Container
i skorzystać z BoxDecoration
właściwości. Oto przykład:
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),
],
),
),
);
}
}
Jeśli chcesz dodać efekt cienia do TabBar
, możesz owinąć TabBar
a Container
i zastosować 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'),
],
),
),
W tym przykładzie BoxShadow
użyto efektu cienia dla pliku TabBar
. Możesz dostosować kolor, promień rozmycia, promień rozmycia i przesunięcie, aby uzyskać pożądany wygląd cienia.
Pamiętaj, aby dostosować właściwości cienia do wymagań projektu.
Pamiętaj, że zastosowanie cienia może nie działać, jeśli AppBar
używasz już elewacji. W takich przypadkach może być konieczne użycie niestandardowych widżetów lub dostosowanie projektu, aby uwzględnić oba efekty.