need_resume
एक पैकेज जो हर स्क्रीन के लिए Stateful विजेट पर onResume, onPause, onReady कार्यक्षमता को लागू करता है।
Need Resume एक Flutter पैकेज है जो Stateful widget (हर स्क्रीन के लिए) पर onResume, onPause, onReady कार्यक्षमता को लागू करता है।
यह अंग्रेज़ी मूल स्नैपशॉट है। नवीनतम सामग्री GitHub पर देखें।
Need Resume is a package to implement onResume, onPause, onReady functionality on a Stateful widget (this is for every screen).
Replace State<MyWidget> with ResumableState<MyWidget> and then implement the void onResume(), void onPause(), and/or void onReady() abstract method. Replace Navigator.push() or Navigator.pushNamed() with push() or pushNamed()
Add this to your package's pubspec.yaml file:
dependencies:
need_resume: ^1.0.7+1
Basic example:
import 'package:flutter/material.dart';
import 'package:need_resume/need_resume.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(title: 'My Application', home: HomeScreen());
}
}
class HomeScreen extends StatefulWidget {
@override
HomeScreenState createState() => HomeScreenState();
}
class HomeScreenState extends ResumableState<HomeScreen> {
@override
void onReady() {
// Implement your code inside here
print('HomeScreen is ready!');
}
@override
void onResume() {
// Implement your code inside here
print('HomeScreen is resumed!');
}
@override
void onPause() {
// Implement your code inside here
print('HomeScreen is paused!');
}
void goAnotherScreen() {
// Replace Navigator.push() or Navigator.pushNamed() with push() or pushNamed()
push(context, MaterialPageRoute(builder: (context) => AnotherScreen()));
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ElevatedButton(
child: Text('Go to Another Screen'),
onPressed: () {
goAnotherScreen();
},
),
),
);
}
}
class AnotherScreen extends StatefulWidget {
@override
AnotherScreenState createState() => AnotherScreenState();
}
class AnotherScreenState extends ResumableState<AnotherScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ElevatedButton(
child: Text('Go Back'),
onPressed: () {
goBack();
},
),
),
);
}
void goBack() {
Navigator.pop(context);
}
}
How about to get data from a screen? Just use resume.data and resume.source:
import 'package:flutter/material.dart';
import 'package:need_resume/need_resume.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(title: 'My Application', home: HomeScreen());
}
}
class HomeScreen extends StatefulWidget {
@override
HomeScreenState createState() => HomeScreenState();
}
class HomeScreenState extends ResumableState<HomeScreen> {
@override
void onResume() {
switch (resume.source) {
case 'another_screen':
print('Data from AnotherScreen: ${resume.data}');
break;
}
}
void goAnotherScreen() {
push(context, MaterialPageRoute(builder: (context) => AnotherScreen()), 'another_screen');
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ElevatedButton(
child: Text('Go to Another Screen'),
onPressed: () {
goAnotherScreen();
},
),
),
);
}
}
class AnotherScreen extends StatefulWidget {
@override
AnotherScreenState createState() => AnotherScreenState();
}
class AnotherScreenState extends ResumableState<AnotherScreen> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: ElevatedButton(
child: Text('Go Back'),
onPressed: () {
goBack();
},
),
),
);
}
void goBack() {
Navigator.pop(context, 'Hello!');
}
}
निर्भरता सूची 2 आइटम
{"sdk":"flutter"}{"sdk":"flutter"}उपयोग के अनुसार छाँटें, गतिविधि की तुलना करें और अपनाने से पहले मूल प्रोजेक्ट की आवश्यकताएँ जाँचें।
“A repository is the most basic element of GitHub.”
GitHub Docs — About repositories ↗