Flutter实战小案例
创始人
2025-01-07 14:35:46
0

(实战)点不到的按钮

// 主要实现效果类 class _MyHomePageState extends State {   // 1.定义要使用的变量   double btnLeft = 0;   double btnTop = 0;   int timeDuration = 500;   String textButton = "点我呀";   // 2.获得当前设备屏幕尺⼨,需要import 'dart:ui'   var s = window.physicalSize / window.devicePixelRatio;   // 3.新建⼀个随机对象,import 'dart:math';   var rng = new Random()   // 4.初始化init变量的值     @override   void initState() {     randomPosition();     super.initState();   }   // 5.随机变化left和top的值   randomPosition() {     setState(() {       btnLeft = rng.nextDouble() * (s.width - 100);       btnTop = rng.nextDouble() * (s.height - 40);     });   }  // 6.widgets渲染   @override   Widget build(BuildContext context) {     return Stack(       children: [         AnimatedPositioned(             duration: Duration(milliseconds: timeDuration),             left: btnLeft,             top: btnTop,             width: 100,             height: 40,             child: ElevatedButton(               onPressed: randomPosition,               child: Text(textButton),             ))       ],     );   } } 

(实战)点不到的按钮修改

  • 修改按钮的宽200和⾼80
  • 设置背景⾊ rgb 值为 136, 138, 226
  • 按钮文本颜⾊设置为黑⾊
  • 文本设置为:初次见面
class MyHomePage extends StatefulWidget {   const MyHomePage({Key? key, required this.title}) : super(key: key);   final String title;    @override   State createState() => _MyHomePageState(); }  class _MyHomePageState extends State {   double btnLeft = 0;   double btnTop = 0;   int timeDuration = 500;   String textButton = "初次见面";   var s = window.physicalSize / window.devicePixelRatio;   var rng = Random();   // 创建背景颜色对象   var backColor = const BoxDecoration(color: Color.fromRGBO(136, 138, 226, 1));   @override   void initState() {     randomPosition();     super.initState();   }    randomPosition() {     setState(() {       btnLeft = Random().nextDouble() * (s.width - 100);       btnTop = Random().nextDouble() * (s.height - 40);     });   }    @override   Widget build(BuildContext context) {     return Container(       decoration: backColor,       child: Stack(         children: [           Positioned(               left: btnLeft,               top: btnTop,               width: 200,               height: 80,               child: ElevatedButton(                 onPressed: randomPosition,                 child: Text(                   textButton,                   // 修改文本颜色                   style: const TextStyle(                     color: Colors.black,                   ),                 ),               )),         ],       ),     );   } } 

相关内容

热门资讯

推荐十款!蜀山四川智能辅助插件... 推荐十款!蜀山四川智能辅助插件下载-真的是有外挂(辅助)器(有挂秘诀);详细蜀山四川智能辅助插件下载...
玩家必备科普!四川熊猫辅助器-... 玩家必备科普!四川熊猫辅助器-真的有外挂(辅助)助手(有挂助手);是一款可以让一直输的玩家,快速成为...
必看攻略!pokermaste... 《必看攻略!pokermaster辅助器-是有外挂(辅助)助手(证实有挂)》 pokermaster...
科技通报!九九山城辅助-有外挂... 科技通报!九九山城辅助-有外挂(辅助)插件(有挂存在);超受欢迎的九九山城辅助稳赢小游戏,经典的九九...
攻略讲解!微乐微信小程序辅助软... 攻略讲解!微乐微信小程序辅助软件-真的是有外挂(辅助)助手(有挂攻略);微乐微信小程序辅助软件最新软...
玩家必看科普!朋朋政和麻为什么... 玩家必看科普!朋朋政和麻为什么一直输-真的有外挂(辅助)插件(有挂规律)是一款可以让一直输的玩家,快...
新手必备!wepoker免费透... 新手必备!wepoker免费透视-是有外挂(辅助)app(竟然有挂);一、wepoker免费透视AI...
玩家亲测!广东雀神挂件去那买-... 您好:广东雀神挂件去那买这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的...
实测发现!吉安中至小程序辅助-... 实测发现!吉安中至小程序辅助-真的有外挂(辅助)软件(有挂实锤);吉安中至小程序辅助是一项吉安中至小...
实测揭晓!wejoker辅助软... 实测揭晓!wejoker辅助软件-真的是有外挂(辅助)器(有挂教程);wejoker辅助软件最新软件...