【发布时间】:2021-10-31 17:07:33
【问题描述】:
我想知道如何创建一个随机数生成器。但不是通常,我想构建以下内容:
-
在应用程序中应该有一个文本字段,用户可以在其中输入最小值和最大值 数字生成器。
-
点击按钮后,应该有一个弹出窗口或修改后的 AlertDialog 打印结果
如果你能帮助我,我会很高兴。
【问题讨论】:
标签: flutter button random numbers generator
我想知道如何创建一个随机数生成器。但不是通常,我想构建以下内容:
在应用程序中应该有一个文本字段,用户可以在其中输入最小值和最大值 数字生成器。
点击按钮后,应该有一个弹出窗口或修改后的 AlertDialog 打印结果
如果你能帮助我,我会很高兴。
【问题讨论】:
标签: flutter button random numbers generator
对于随机数:
int MIN;
int MIN;
double randomNumber = random.nextInt(MAX) + MIN;
对于文本字段: 您从文本字段中获取数据(例如使用文本字段 onSubmitted)并将其设置为最小值和最大值。
对于弹出:
// 可以设置标题和内容
使用AlertDialog(title: Text('Random number') , content: Text(randomNumber.toString()))
例如,这可能是您想要的代码(只是一个示例,您可以随意更改):
import 'package:flutter/material.dart';
import 'dart:math';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
static const String _title = 'Flutter Code Sample';
@override
Widget build(BuildContext context) {
return MaterialApp(
title: _title,
home: LoginScreen(),
);
}
}
class LoginScreen extends StatefulWidget {
createState() {
return new LoginScreenState();
}
}
class LoginScreenState extends State<LoginScreen> {
int min = 1;
int max = 1;
int randomNumber = 1;
Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: [
TextField(
decoration: InputDecoration(labelText: 'Enter Min'),
onSubmitted: (thisIsTheMinValueJustSubmitted) {
min = int.parse(thisIsTheMinValueJustSubmitted);
},
),
TextField(
decoration: InputDecoration(labelText: 'Enter Max'),
onSubmitted: (thisIsTheMaxValueJustSubmitted) {
max = int.parse(thisIsTheMaxValueJustSubmitted);
},
),
ElevatedButton(
onPressed: () {
setState(() {
randomNumber = Random().nextInt(max - min) + min;
});
},
child: Text('Generate Number')),
AlertDialog(
title: Text('Random Number is:'),
content: Text(randomNumber.toString()),
),
Text(randomNumber.toString()),
],
),
);
}
}
【讨论】: