颤动大小按钮

时间:2019-08-13 22:10:43

标签: android button flutter

我正在为尺寸设置PHP,以便用户选择自己的尺寸。 当用户按下按钮时,如何使按钮边框变为粗体?

-这些按钮是由ListView.builder创建的,因此我无法为其设置局部变量。

1 个答案:

答案 0 :(得分:1)

您可以创建一个变量,该变量保留要设置为粗体的按钮编号,单击后可以更改该变量的值。

下面的例子可以使你明白。

import 'package:flutter/material.dart';

class TextFieldInput extends StatefulWidget {
  @override
  _TextFieldInputState createState() => _TextFieldInputState();
}

class _TextFieldInputState extends State<TextFieldInput> {
  final List<int> list = [1,2,3,4,5,6,7,8,9,0];

  int number = -1;

  @override
  Widget build(BuildContext context) {
    return Center(
      child: Container(
          child: ListView.builder(
            itemCount: (list.length).ceil(),
              itemBuilder: (context, int index){
                return new FlatButton(
                  key: Key(index.toString()),
                    child: new Text(list[index].toString()),
                    shape: Border.all(
                      width: number==index ? 5.0 : 3.0
                    ),
                    onPressed: (){
                        setState(() {
                          number = index;
                        });
                    }
                );
              }
          )
      ),
    );
  }
}