флаттер, как можно сохранить значение инфортора? - PullRequest
0 голосов
/ 12 февраля 2020

введите описание изображения здесь

как я могу отобразить значение индикатора при запуске страницы

1 Ответ

1 голос
/ 13 февраля 2020

Вы можете скопировать и запустить полный код ниже
Вы можете использовать пакет https://pub.dev/packages/flutter_xlider
и установить alwaysShowTooltip в true

фрагмент кода

FlutterSlider(
          values: [_lowerValue, _upperValue],
          max: 200,
          min: 50,
          rangeSlider: true,
          handlerAnimation: FlutterSliderHandlerAnimation(
              curve: Curves.elasticOut,
              reverseCurve: null,
              duration: Duration(milliseconds: 700),
              scale: 1.4),
          onDragging: (handlerIndex, lowerValue, upperValue) {
            _lowerValue = lowerValue;
            _upperValue = upperValue;
            setState(() {});
          },
          tooltip: FlutterSliderTooltip(
            alwaysShowTooltip: true,
          ),
        ),

рабочая демонстрация

enter image description here полный код

import 'package:flutter/material.dart';
import 'package:flutter_xlider/flutter_xlider.dart';

class SliderDemo extends StatefulWidget {
  @override
  _SliderDemoState createState() => _SliderDemoState();
}

class _SliderDemoState extends State<SliderDemo> {
  double _lowerValue = 50;
  double _upperValue = 180;

  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Sliders (Guess the Word's level)"),
      ),
      body: Center(
          child: Column(children: <Widget>[
        SizedBox(
          height: 50,
        ),
        FlutterSlider(
          values: [_lowerValue, _upperValue],
          max: 200,
          min: 50,
          rangeSlider: true,
          handlerAnimation: FlutterSliderHandlerAnimation(
              curve: Curves.elasticOut,
              reverseCurve: null,
              duration: Duration(milliseconds: 700),
              scale: 1.4),
          onDragging: (handlerIndex, lowerValue, upperValue) {
            _lowerValue = lowerValue;
            _upperValue = upperValue;
            setState(() {});
          },
          tooltip: FlutterSliderTooltip(
            alwaysShowTooltip: true,
          ),
        ),
      ])),
    );
  }
}

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: SliderDemo(),
    );
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...