Flutter

Flutter initState Fonksiyonu

Herkese merhaba, Flutter yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda initState fonksiyonunu anlatacağım. Hadi başlayalım !

Kullanım Alanı

Flutter, Google tarafından geliştirilen açık kaynaklı bir mobil uygulama geliştirme çerçevesidir. Flutter, hızlı geliştirme için widget’lar gibi birçok araç sağlar. initState, Stateful Widget’ların oluşturulduğunda çağrılan bir yöntemdir ve genellikle widget’ın ilk başlatılması için kullanılır. initState, widget öğesi başlatıldığında yapılacak işlemleri içeren bir yöntemdir. Bu yöntem genellikle veri alma ve veri tabanı bağlantıları gibi birçok işlemi gerçekleştirmek için kullanılır.

Kullanım Örneği

Aşağıda initState yöntemine ilişkin bir örnek verilmiştir:

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

class _MyWidgetState extends State<MyWidget> {
  int _counter = 0;

  @override
  void initState() {
    super.initState();
    _loadCounter();
  }

  void _loadCounter() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    setState(() => _counter = (prefs.getInt('counter') ?? 0););
  }

  void _incrementCounter() async {
    SharedPreferences prefs = await SharedPreferences.getInstance();
    setState(() {
      _counter = (prefs.getInt('counter') ?? 0) + 1;
      prefs.setInt('counter', _counter);
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('My Widget')),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text('Counter:'),
            Text('$_counter', style: Theme.of(context).textTheme.headline4),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ),
    );
  }
}

Yukarıdaki örnekte, initState yöntemi kullanılarak bir _counter değişkeni oluşturulur ve _loadCounter yöntemi çağrılır. _loadCounter yöntemi, SharedPreferences aracılığıyla kullanıcının _counter değişkenindeki değeri ayarlar. Buna ek olarak, _incrementCounter yöntemi, SharedPreferences kullanarak _counter değişkeninin değerini artırır.

initState, Stateful Widget’ın durumunu ve özelliklerini ayarlamak için önemli bir yöntemdir. Bu yöntem, öğenin oluşturulduğunda yapılacak işlemleri belirler ve bu işlemler, kullanıcının öğeyle etkileşimine ilişkin bilgileri saklamak için kullanılır.

initState yöntemi, Stateful Widget sınıfında bir metottur ve Stateful Widget sınıfında aşağıdaki gibi kullanılır:

class MyWidget extends StatefulWidget {
  //...
}

class _MyWidgetState extends State<MyWidget> {
  @override
  void initState() {
    //...
    super.initState();
  }
  //...
}

initState yöntemi, Widget öğesi ilk kez oluşturulduğunda çağrılır ve Widget öğesi oluşturulduktan hemen sonra gerçekleşir. Bu yöntemi kullanarak, Widget öğesinin durumunu ve özelliklerini ilk kez ayarlayabilirsiniz.

Aşağıdaki örnekte, initState yöntemi kullanılarak bir resim yüklenir:

class MyImageWidget extends StatefulWidget {
  @override
  _MyImageWidgetState createState() => _MyImageWidgetState();
}

class _MyImageWidgetState extends State<MyImageWidget> {
  String imageUrl = 'https://www.example.com/myimage.jpg';
  Image image;

  @override
  void initState() {
    super.initState();
    loadImage();
  }

  void loadImage() async {
    image = Image.network(imageUrl);
    await precacheImage(image.image, context);
    setState(() {});
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('My Image Widget'),
      ),
      body: Center(
        child: image != null ? image : CircularProgressIndicator(),
      ),
    );
  }
}

Yukarıdaki örnekte, initState yöntemi kullanılarak bir resim yüklenir. loadImage yöntemi, resmi yükler ve precacheImage yöntemi kullanarak resmi ön belleğe alır. setState yöntemi çağrılarak, resmin görüntülenmesi sağlanır.

Sonuç

Sonuç olarak, initState yöntemi, Widget öğesi oluşturulduğunda yapılacak işlemleri belirleyerek Widget öğesinin durumunu ve özelliklerini ayarlamak için kullanılır. Bu yöntemi kullanarak, kullanıcının öğeyle etkileşimine ilişkin bilgileri saklayabilir ve kullanıcının beklentilerini karşılayabilirsiniz.

Evet initState fonksiyonu bu şekilde olmakta. Tüm Flutter yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu