Flutter -Как передать переменную из одного класса дротика в другой класс дротика - PullRequest
0 голосов
/ 01 июня 2018

Я просто хочу передать значения int и bool в другой класс в другом файле dart.Я пытаюсь передать значения методом.

1 Ответ

0 голосов
/ 01 июня 2018

Попробуйте это.

import 'package:flutter/material.dart';

void main() => runApp(new MaterialApp(
      home: new MainPage(),
    ));

class MainPage extends StatefulWidget {
  @override
  _MainPageState createState() => new _MainPageState();
}

class _MainPageState extends State<MainPage> {
  int count = 0;
  bool isMultiSelectStarted = false;

  void onMultiSelectStarted(int count, bool isMultiSelect) {
    print('Count: $count  isMultiSelectStarted: $isMultiSelect');
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        backgroundColor: Colors.blue,
        title: new Text('Home'),
      ),
      body: new Center(
        child: new RaisedButton(
          child: new Text('Go to SecondPage'),
          onPressed: () {
            Navigator.of(context).push(
              new MaterialPageRoute(
                builder: (context) {
                  return new SecondPage(onMultiSelectStarted);
                },
              ),
            );
          },
        ),
      ),
    );
  }
}

class SecondPage extends StatefulWidget {
  int count = 1;
  bool isMultiSelectStarted = true;

  final Function multiSelect;

  SecondPage(this.multiSelect);

  @override
  _SecondPageState createState() => new _SecondPageState();
}

class _SecondPageState extends State<SecondPage> {
  @override
  Widget build(BuildContext context) {
    return new Center(
      child: new RaisedButton(
        child: new Text('Pass data to MainPage'),
        onPressed: () {
          widget.multiSelect(widget.count, widget.isMultiSelectStarted);
        },
      ),
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...