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,                   ),                 ),               )),         ],       ),     );   } } 

相关内容

热门资讯

透视操作!大菠萝789辅助器下... 透视操作!大菠萝789辅助器下载,wepoker透视底牌脚本(透视)原来有挂(哔哩哔哩)1、大菠萝7...
透视经验!如何下载德普之星辅助... 透视经验!如何下载德普之星辅助软件,德扑圈透视(透视)果然真的有透视技巧(哔哩哔哩)1、打开软件启动...
透视方针!哈糖大菠萝免费辅助器... 透视方针!哈糖大菠萝免费辅助器(透视)开挂透视安装(哔哩哔哩)哈糖大菠萝免费辅助器辅助器是一种具有地...
玩家必备攻略"牛财神... 玩家必备攻略"牛财神插件"好像真的有辅助技巧(有挂攻略)-哔哩哔哩1、用户打开应用后不用登录就可以直...
透视绝活!wepoker有没有... 透视绝活!wepoker有没有挂,如何下载wepoker安装包(透视)一贯是真的挂(哔哩哔哩)1、任...
透视指南书!aapoker插件... 透视指南书!aapoker插件下载,aapoker辅助器是真的吗(透视)都是是真的脚本器(哔哩哔哩)...
透视模块!破解辅助插件wepo... 透视模块!破解辅助插件wepoker(透视)开挂透视软件(哔哩哔哩)1、游戏颠覆性的策略玩法,独创攻...
大家学习交流"新畅游... 大家学习交流"新畅游互娱辅助"真是是真的有辅助工具(有挂方法)-哔哩哔哩所有人都在同一条线上,像星星...
透视教材!aapoker透视插... 透视教材!aapoker透视插件,德州局透视(透视)总是真的有挂(哔哩哔哩)1、在aapoker透视...
透视指南!xpoker辅助控制... 透视指南!xpoker辅助控制,hardrock作必弊(透视)真是真的有透视软件(哔哩哔哩)1、下载...