在特定时间之前禁用按钮-颤振

时间:2020-07-02 08:32:13

标签: flutter

我是扑扑和飞镖的新手。我正在开发类似音乐/音乐视频应用程序的应用程序,并且我希望在特定时间之前禁用按钮,并在我要启动视频时启用它。对于特定用户而言,这不是全部。我没有尝试编写代码,因为我不知道如何开始。请帮助我。

1 个答案:

答案 0 :(得分:1)

只需使用布尔变量即可完成此操作,该变量将控制按钮是否启用(请记住,向null提供onPressed会使按钮的行为被禁用),而您没有提供我自己提供的示例的任何代码,一旦您将文本更改为pause,按钮就会变为可点击状态。

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: MyWidget(),
        ),
      ),
    );
  }
}

class MyWidget extends StatefulWidget {
  @override
  _MyWidgetState createState() => _MyWidgetState();
}

class _MyWidgetState extends State<MyWidget> {
  bool _isPlaying = false;
  @override
  Widget build(BuildContext context) {
    return Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: [
        GestureDetector(
          child: Text(_isPlaying ? 'Pause' : 'Play'),
          onTap: () {
            setState(() => _isPlaying = !_isPlaying);
          }
        ),
        FlatButton(
          color: Colors.blue,
          child: Icon(Icons.play_arrow),
          onPressed: _isPlaying
              ? () {
                  // some code to do when pressing the button
                }
              : null,
        )
      ],
    );
  }
}

enter image description here