Junior — Middle
Flutterдеги StatefulWidget концепциясын түшүндүрүп бериңиз жана ал StatelessWidgetтен эмнеге айырмаланат?
sobes.tech AI
AIден жооп
Flutterдө StatefulWidget — бул виджет, ал иштеп жатканда өз абалын өзгөртө алат. Ал өз абалын өзүнчө State объектисинде сактайт, жана бул абал өзгөргөндө, setState() методу чакырылат, ал интерфейсти жаңыртат.
Анын тескерисине, StatelessWidget ички абалга ээ эмес жана дайыма берилген параметрлердин негизинде курулат. Ал түзүлгөндөн кийин өзгөрбөйт.
Мисал:
class CounterWidget extends StatefulWidget {
@override
_CounterWidgetState createState() => _CounterWidgetState();
}
class _CounterWidgetState extends State<CounterWidget> {
int _counter = 0;
void _increment() {
setState(() {
_counter++;
});
}
@override
Widget build(BuildContext context) {
return Column(
children: [
Text('Санаач: \\$_counter'),
ElevatedButton(onPressed: _increment, child: Text('Өлчөмүн көбөйтүү')),
],
);
}
}
Бул жерде, CounterWidget — StatefulWidget, анткени эсептегичтин мааниси өзгөрүп, UIга таасир этет. Эгер абал өзгөрбөсө, StatelessWidget колдонсо болот.