как я могу заставить setState просто обновлять мне поле и не перерисовывать выбранный виджет, а не весь экран
Future getImage(ImageSource tipo) async {
final pickedFile = await picker.getImage(source: tipo, imageQuality: 40);
setState(() {
в этой строке он обновляется, есть только способ обновить sh только изображение
image = File(pickedFile.path);
});
}
@override
Widget build(BuildContext context) {
UserBloc userBloc = BlocProvider.of<UserBloc>(context);
final _controllerTitleTienda = TextEditingController();
final _controllerDescriptionTienda = TextEditingController();
final nombrefinal = _controllerTitleTienda.text;
return Scaffold(
body: Stack(
children: <Widget>[
GradientBack(
height: 300.0,
),
Row(
//App Bar
children: <Widget>[
Container(
padding: EdgeInsets.only(top: 25.0, left: 5.0),
child: SizedBox(
height: 45.0,
width: 45.0,
child: IconButton(
icon: Icon(
Icons.keyboard_arrow_left,
color: Colors.white,
size: 45,
),
onPressed: () {
Navigator.pop(context);
}),
),
),
Flexible(
child: Container(
padding: EdgeInsets.only(top: 45.0, left: 20.0, right: 10.0),
child: TitleHeader(title: "Añadir una Tienda"),
))
],
),
Container(
код, в котором я выбираю изображение, нажимая один из двух значков, если галерея или камера
margin: EdgeInsets.only(top: 120.0, bottom: 20.0),
child: ListView(
children: <Widget>[
Container(
alignment: Alignment.center,
child: CardAddImageWithFabIcon(
image: image == null
? AssetImage("assets/img/no-image.png")
: FileImage(image),
iconData: Icons.camera_alt,
iconData2: Icons.image,
onPressedFabIcon: () {
getImage(ImageSource.camera);
},
onPressedFabIcon2: () {
getImage(ImageSource.gallery);
},
width: 350.0,
height: 250.0,
left: 0.0,
//right: 40.0,
),
),
Container(
padding: EdgeInsets.only(right: 20.0, left: 20.0),
child: Dropdwntext(),
Я вызываю виджет, содержащий DropdownButton, который также возвращает пустую строку моих входов
), //Foto
> Container(
> //TextField Title
> margin: EdgeInsets.only(top: 20.0, bottom: 20.0),
> child: TextInput(
> hintText: "Nombre",
> inputType: null,
> maxLines: 1,
, где я получаю значение, но при вводе изображения или DropdownButton, поскольку у них есть setState
controller: _controllerTitleTienda,),),
TextInput(
//Description
hintText: "Descripcion",
inputType: TextInputType.multiline,
maxLines: 4,
То же самое происходит через setState. Я получаю значение, но при вводе изображения или DropdownButton, поскольку у них есть setState и они перерисовывают виджет
controller: _controllerDescriptionTienda,
),