Pentru a aplica o umbră de casetă la un TabBar
în Flutter, o puteți înfășura într-o Container
și utilizați BoxDecoration
proprietatea. Iată un exemplu:
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),
],
),
),
);
}
}
Dacă doriți să adăugați un efect de umbră la TabBar
, puteți înfășura TabBar
în Container
a și aplica 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'),
],
),
),
În acest exemplu, BoxShadow
este folosit pentru a crea un efect de umbră pentru TabBar
. Puteți personaliza culoarea, raza de răspândire, raza de estompare și decalajul pentru a obține aspectul de umbră dorit.
Nu uitați să ajustați proprietățile umbrei pentru a se potrivi cerințelor dvs. de proiectare.
Vă rugăm să rețineți că aplicarea unei umbre ar putea să nu funcționeze dacă AppBar
utilizați deja elevația. În astfel de cazuri, poate fi necesar să utilizați widget-uri personalizate sau să ajustați designul pentru a se adapta ambelor efecte.