Overlay.of
egy statikus módszer, amely a legközelebbi ős widget Flutter lekérésére szolgál. OverlayState
Overlay
A Overlay
widget modulok halmazának létrehozására szolgál, amely megjeleníthető az alkalmazásban lévő többi widget tetején Flutter. A Overlay.of
módszer lehetővé teszi, hogy hozzáférjen egy OverlayState
adott BuildContext
.
Íme egy példa arra, hogyan érheti Overlay.of
el a következőt OverlayState
:
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 Scaffold(
appBar: AppBar(
title: Text('Overlay.of Example'),
),
body: Center(
child: ElevatedButton(
onPressed:() {
OverlayState overlayState = Overlay.of(context);
OverlayEntry overlayEntry = OverlayEntry(
builder:(BuildContext context) {
return Positioned(
top: 100,
left: 50,
child: Container(
width: 100,
height: 100,
color: Colors.blue,
),
);
},
);
overlayState.insert(overlayEntry);
},
child: Text('Show Overlay'),
),
),
);
}
}
Ebben a példában a gomb megnyomásakor a módszer a jelenlegihez társított Overlay.of
lekérésére szolgál. Ezután létrejön egy, és hozzáadódik a. Ez egy kék tárolót jelenít meg egy adott helyen a többi widgetek tetején. OverlayState
BuildContext
OverlayEntry
overlay insert
OverlayState
Kérjük, vegye figyelembe, hogy a használat körültekintő kezelést igényel, és a memóriaszivárgások elkerülése érdekében overlay általában távolítsa el a bejegyzéseket, amikor már nincs rájuk szükség. overlay
Overlay.of
Ha a legutóbbi frissítésem után frissítések vagy változások történtek, javasoljuk, hogy tekintse át a Flutter dokumentációt a legfrissebb információkért.