Я создаю простое приложение «Список дел» во Flutter. Когда я нажимаю кнопку «floatingActionButton», должно отображаться всплывающее окно, в котором пользователь может ввести новую задачу. Но при нажатии кнопки ничего не отображается. Тестирование на реальном телефоне Android. Вот код:
import 'package:flutter/material.dart';
import 'task.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State createState() => _MyAppState();
}
class _MyAppState extends State {
List tasks = [];
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
backgroundColor: Colors.yellow[700],
title: Text("To Do List"),
centerTitle: true,
),
body: Container(margin: EdgeInsets.all(20), child:
Column(children:
tasks.map(
(name) => Task(name: name, delete: () => setState(()=>tasks.remove(name)))
).toList() as List
)
),
floatingActionButton: IconButton(icon: Icon(Icons.add), onPressed: displayPrompt),
)
);
}
Future displayPrompt() async {
await showDialog(
context: context,
builder: (BuildContext context) => TextField(
onSubmitted: (String input) => setState(()=>tasks.add(input)),
decoration: InputDecoration(hint: Text("Please enter a task")),
autocorrect: true,
autofocus: true,
)
);
}
}
Вот созданный мною собственный виджет:
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class Task extends StatelessWidget {
final String name;
final VoidCallback delete;
const Task({required this.name, required this.delete, super.key});
@override
Widget build(BuildContext context) {
return Card(
child: Row(children: [
Text(name),
IconButton(icon: Icon(Icons.delete), onPressed: delete,)
]),
);
}
Подробнее здесь: https://stackoverflow.com/questions/798 ... g-anything
Функция showDialog во флаттере ничего не делает ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1763437192
Anonymous
Я создаю простое приложение «Список дел» во Flutter. Когда я нажимаю кнопку «floatingActionButton», должно отображаться всплывающее окно, в котором пользователь может ввести новую задачу. Но при нажатии кнопки ничего не отображается. Тестирование на реальном телефоне Android. Вот код:
import 'package:flutter/material.dart';
import 'task.dart';
void main() => runApp(MyApp());
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State createState() => _MyAppState();
}
class _MyAppState extends State {
List tasks = [];
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
backgroundColor: Colors.yellow[700],
title: Text("To Do List"),
centerTitle: true,
),
body: Container(margin: EdgeInsets.all(20), child:
Column(children:
tasks.map(
(name) => Task(name: name, delete: () => setState(()=>tasks.remove(name)))
).toList() as List
)
),
floatingActionButton: IconButton(icon: Icon(Icons.add), onPressed: displayPrompt),
)
);
}
Future displayPrompt() async {
await showDialog(
context: context,
builder: (BuildContext context) => TextField(
onSubmitted: (String input) => setState(()=>tasks.add(input)),
decoration: InputDecoration(hint: Text("Please enter a task")),
autocorrect: true,
autofocus: true,
)
);
}
}
Вот созданный мною собственный виджет:
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
class Task extends StatelessWidget {
final String name;
final VoidCallback delete;
const Task({required this.name, required this.delete, super.key});
@override
Widget build(BuildContext context) {
return Card(
child: Row(children: [
Text(name),
IconButton(icon: Icon(Icons.delete), onPressed: delete,)
]),
);
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79822595/showdialog-function-in-flutter-not-doing-anything[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия