Overlay.of
ਇੱਕ ਸਥਿਰ ਵਿਧੀ ਹੈ Flutter ਜਿਸਦੀ ਵਰਤੋਂ OverlayState
ਨਜ਼ਦੀਕੀ ਪੂਰਵਜ Overlay
ਵਿਜੇਟ ਲਈ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ।
ਵਿਜੇਟ Overlay
ਦੀ ਵਰਤੋਂ ਵਿਜੇਟਸ ਦਾ ਇੱਕ ਸਟੈਕ ਬਣਾਉਣ ਲਈ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੋ ਕਿਸੇ Flutter ਐਪਲੀਕੇਸ਼ਨ ਵਿੱਚ ਦੂਜੇ ਵਿਜੇਟਸ ਦੇ ਸਿਖਰ 'ਤੇ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ। ਵਿਧੀ Overlay.of
ਤੁਹਾਨੂੰ OverlayState
ਇੱਕ ਖਾਸ ਨਾਲ ਸੰਬੰਧਿਤ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ ਸਹਾਇਕ ਹੈ BuildContext
.
ਇੱਥੇ ਇੱਕ ਉਦਾਹਰਨ ਹੈ ਕਿ ਤੁਸੀਂ Overlay.of
ਇਹਨਾਂ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਲਈ ਕਿਵੇਂ ਵਰਤ ਸਕਦੇ ਹੋ 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'),
),
),
);
}
}
ਇਸ ਉਦਾਹਰਨ ਵਿੱਚ, ਜਦੋਂ ਬਟਨ ਦਬਾਇਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਵਿਧੀ ਵਰਤਮਾਨ ਨਾਲ ਸੰਬੰਧਿਤ Overlay.of
ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਵਰਤੀ ਜਾਂਦੀ ਹੈ । ਇੱਕ ਫਿਰ ਬਣਾਇਆ ਗਿਆ ਹੈ ਅਤੇ ਵਿਧੀ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਜੋੜਿਆ ਗਿਆ ਹੈ । ਇਹ ਦੂਜੇ ਵਿਜੇਟਸ ਦੇ ਸਿਖਰ 'ਤੇ ਇੱਕ ਖਾਸ ਸਥਿਤੀ 'ਤੇ ਇੱਕ ਨੀਲੇ ਕੰਟੇਨਰ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਦਾ ਹੈ। OverlayState
BuildContext
OverlayEntry
overlay insert
OverlayState
ਕਿਰਪਾ ਕਰਕੇ ਨੋਟ ਕਰੋ ਕਿ ਵਰਤੋਂ ਲਈ overlay ਸਾਵਧਾਨੀਪੂਰਵਕ ਪ੍ਰਬੰਧਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਤੁਹਾਨੂੰ ਆਮ ਤੌਰ 'ਤੇ ਉਹਨਾਂ ਐਂਟਰੀਆਂ ਨੂੰ ਹਟਾਉਣਾ ਚਾਹੀਦਾ ਹੈ overlay ਜਦੋਂ ਮੈਮੋਰੀ ਲੀਕ ਤੋਂ ਬਚਣ ਲਈ ਉਹਨਾਂ ਦੀ ਲੋੜ ਨਹੀਂ ਹੁੰਦੀ ਹੈ।
ਜੇਕਰ ਮੇਰੇ ਆਖਰੀ ਅੱਪਡੇਟ ਤੋਂ ਬਾਅਦ ਕੋਈ ਵੀ ਅੱਪਡੇਟ ਜਾਂ ਬਦਲਾਅ ਹੋਏ ਹਨ Overlay.of
, ਤਾਂ ਮੈਂ Flutter ਨਵੀਨਤਮ ਜਾਣਕਾਰੀ ਲਈ ਦਸਤਾਵੇਜ਼ਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਦੀ ਸਿਫ਼ਾਰਸ਼ ਕਰਦਾ ਹਾਂ।