Nano Hash - криптовалюты, майнинг, программирование

Моя строка инициализирована, но все еще отображается как ноль (флаттер - дротик)

Надеюсь, у вас все хорошо!

Я работаю над простым учебником по строкам с флаттером, и я столкнулся с этой проблемой, касающейся строк и виджета Text. Я пытаюсь создать строковую переменную в моем классе _MyHomePageState, но мой displayTxt отображается как null, хотя я установил для него значение. Я использовал интерполяцию, чтобы увидеть, какое значение оно содержит, и, конечно же, оно было нулевым. Я новичок в дротике и флаттере, поэтому приветствую любую помощь.

Хорошего дня!

  • Пункт списка
import 'package:flutter/material.dart';

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,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);


  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  **String displayTxt = "Hello";**

  @override
  Widget build(BuildContext context) {

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Row(
              children: <Widget>[
                Text(
                  "Some text here",
                  style: TextStyle(
                    color: Colors.blue,
                    fontSize: 45,
                    fontWeight: FontWeight.bold,
                    fontStyle: FontStyle.italic,
                    letterSpacing: 2,
                    shadows: [
                      Shadow(
                        color: Colors.grey,
                        offset: Offset(-5,-5),
                      ),
                    ],
                    decoration: TextDecoration.underline,
                  ),
                ),
              ],
            ),

            Row(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                MaterialButton(
                  onPressed: () => {},
                  child: Row(
                    mainAxisSize: MainAxisSize.min,
                    children: <Widget>[
                      Icon(
                        Icons.airplanemode_active,
                        color: Colors.white,
                      ),
                      Text('press me'),
                    ],
                  ),
                  color: Colors.black,
                  textColor: Colors.white,
                  highlightColor: Colors.white10,
                  elevation: 10,
                ),
                Padding(
                  padding: const EdgeInsets.all(8.0),
                  **child: Text("${displayTxt}"),**
                ),
              ],
            )
          ],
        ),
      ),
    );
  }
}
12.05.2020

  • Вставка этого кода в DartPad не показывает ошибок, и строка отображается должным образом. 12.05.2020

Ответы:


1

Я только что решил свою проблему, оказывается, когда у вас нет строки, используемой в функции, она кажется нулевой. Это мое простое объяснение, но если кто-то с большим опытом сможет уточнить, это будет полезно.

Я добавил это и больше никаких ошибок

 onPressed: () => setState(() {
                this.displayTxt = 'Some text to display';
              }),
12.05.2020
  • Опять же, ваш исходный код работал, как ожидалось, без нулевых строк. Если в вашей программе есть ошибка, ее нет в опубликованном вами коде. В его нынешнем виде я не могу себе представить, какая у вас была проблема с этим кодом, который исправлен с помощью этого решения. 12.05.2020
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..