prefixIconConstraints property

BoxConstraints? prefixIconConstraints
final

The constraints for the prefix icon.

This can be used to modify the BoxConstraints surrounding prefixIcon.

This property is particularly useful for getting the decoration's height less than 48px. This can be achieved by setting isDense to true and setting the constraints' minimum height and width to a value lower than 48px.

{@tool dartpad --template=stateless_widget_scaffold}

This example shows the differences between two TextField widgets when prefixIconConstraints is set to the default value and when one is not.

Note that isDense must be set to true to be able to set the constraints smaller than 48px.

If null, BoxConstraints with a minimum width and height of 48px is used.

Widget build(BuildContext context) {
  return Padding(
    padding: const EdgeInsets.symmetric(horizontal: 8.0),
    child: Column(
      mainAxisAlignment: MainAxisAlignment.center,
      children: const <Widget>[
        TextField(
          decoration: InputDecoration(
            hintText: 'Normal Icon Constraints',
            prefixIcon: Icon(Icons.search),
          ),
        ),
        SizedBox(height: 10),
        TextField(
          decoration: InputDecoration(
            isDense: true,
            hintText:'Smaller Icon Constraints',
            prefixIcon: Icon(Icons.search),
            prefixIconConstraints: BoxConstraints(
              minHeight: 32,
              minWidth: 32,
            ),
          ),
        ),
      ],
    ),
  );
}

{@end-tool}

Implementation

final BoxConstraints? prefixIconConstraints;