Life cycle in flutter

前端 未结 8 820
予麋鹿
予麋鹿 2020-12-07 10:48

Does flutter have a method like Activity.resume() which can tell developer the user has gone back to the activity.

When I pick the data from internet in

相关标签:
8条回答
  • 2020-12-07 11:36

    Since everyone here is talking about app life cycle and not addressing the question which OP is asking. here is the answer to the question.

    The requirement is he want to open page B from page A, let say to choose file from page B, and once file selected he want to go back to page A and need to process that selected file in page A. Like in android we can do it in onActivityResult() method. Below is the way we can achieve in flutter.

    You can open the page B from page A as below

    Map results =  await Navigator.of(context).push(MaterialPageRoute(
          builder: (BuildContext context) {
            return new PageB(title: "Choose File");
            },
          ));
    
        if (results != null && results.containsKey('selection')) {
          setState(() {
            _selection = results['selection'];
          });
    
        **//here you can do whatever you want to do with selection variable.**
    
        }
    

    In Page B you can select the file or what ever things you need to return to page A as below (return file or any other variable after selection.

    Navigator.of(context).pop({'selection':file});
    
    0 讨论(0)
  • 2020-12-07 11:40
    1. createState(): When the Framework is instructed to build a StatefulWidget, it immediately calls createState()

    2. mounted is true: When createState creates your state class, a buildContext is assigned to that state. buildContext is, overly simplified, the place in the widget tree in which this widget is placed. Here's a longer explanation. All widgets have a bool this.mounted property. It is turned true when the buildContext is assigned. It is an error to call setState when a widget is unmounted.

    3. initState(): This is the first method called when the widget is created (after the class constructor, of course.) initState is called once and only once. It must call super.initState().

    4. didChangeDependencies(): This method is called immediately after initState on the first time the widget is built.

    5. build(): This method is called often. It is required, and it must return a Widget.

    6. didUpdateWidget(Widget oldWidget): If the parent widget changes and has to rebuild this widget (because it needs to give it different data), but it's being rebuilt with the same runtimeType, then this method is called. This is because Flutter is re-using the state, which is long lived. In this case, you may want to initialize some data again, as you would in initState.

    7. setState(): This method is called often from the framework itself and from the developer. Its used to notify the framework that data has changed

    8. deactivate(): Deactivate is called when State is removed from the tree, but it might be reinserted before the current frame change is finished. This method exists basically because State objects can be moved from one point in a tree to another.

    9. dispose(): dispose() is called when the State object is removed, which is permanent. This method is where you should unsubscribe and cancel all animations, streams, etc.

    10. mounted is false: The state object can never remount, and an error is thrown is setState is called.

    0 讨论(0)
提交回复
热议问题