DEV Community

Cover image for PageStorage Class 💫 🌌 ✨
Gülsen Keskin
Gülsen Keskin

Posted on • Edited on

5 5

PageStorage Class 💫 🌌 ✨

Bu yazıda PageStorage class'ının ne olduğunu ve nasıl kullanıldığını öğreneceğiz. İyi okumalar :)

Kaydırma çubuğuna sahip bir sayfanızın olduğunu düşünelim scroll'unuzu belirli bir yere kadar kaydırıp yeni bir sayfa açtığınızda ilk sayfaya geri dönmeniz durumunda kaydırma çubuğunuzun bıraktığınız yerde olmasını isteyebilirsiniz. İşte bu ve benzeri durumlar için Flutter da PageStorage class'ını kullanabiliriz.

Belgeler bu class'ı şöyle tanımlar:

PageStorage, widget'tan daha uzun ömürlü olabilecek değerleri kaydetmek ve geri yüklemek için kullanılır. Örneğin, birden fazla sayfa sekmelerde gruplandığında, bir sayfa kapatıldığında, widget'ı bozulur ve durumu kaybolur. Kökte bir PageStorage ekleyerek ve her sayfaya bir PageStorageKey ekleyerek, sayfanın bazı durumları (ör. Kaydırılabilir bir widget'ın kaydırma konumu) otomatik olarak en yakın atası PageStorage'da depolanır ve geri değiştirildiğinde geri yüklenir.

İşte basit bir örnek:

final PageStorageBucket _pageStorageBucket = PageStorageBucket();

  @override
  Widget build(BuildContext context) {
    return PageStorage(
      bucket: _pageStorageBucket,
      child: Form(
        child: Padding(
          padding: const EdgeInsets.all(8.0),
          child: SingleChildScrollView(
            key: PageStorageKey("key_degerinizi_girin"),
          ),
        ),
      ),
    );
  }
Enter fullscreen mode Exit fullscreen mode

reference

Sentry mobile image

Improving mobile performance, from slow screens to app start time

Based on our experience working with thousands of mobile developer teams, we developed a mobile monitoring maturity curve.

Read more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs