Flutter GetX – Routing – Get.to

GetX, Flutter için geliştirilmiş bir pakettir ve birçok farklı özelliği içerir. Routing özelliği de bunlardan biridir ve uygulamanızın farklı sayfalarına geçiş yapmanızı kolaylaştırır.

Routing özelliğini kullanmak için öncelikle GetX paketini projenize eklemeniz gerekiyor. Bunun için pubspec.yaml dosyasına aşağıdaki satırı ekleyin:

dependencies:
  get: ^4.3.8

Daha sonra, uygulamanızda kullanacağınız her sayfa için bir controller oluşturun. Controller, sayfanızın veri akışını yönetir ve sayfaya özgü işlevleri ve değişkenleri tutar.

//home_controller.dart

import 'package:get/get.dart';

class HomeController extends GetxController {
  // controller kodları buraya yazılacak
}

Her bir sayfada, controller’ı çağırmak ve sayfayı yönetmek için bir Widget oluşturmanız gerekiyor.

import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:myapp/controllers/home_controller.dart';

class HomePage extends StatelessWidget {
  final HomeController _controller = Get.put(HomeController());

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('Home')),
      body: Center(
        child: Text('Welcome to the home page!'),
      ),
    );
  }
}

Bir sayfadan diğerine geçmek için, Get.to yöntemini kullanabilirsiniz.

Get.to(() => OtherPage());

Get.to yöntemi, aynı zamanda argümanları da alabilir. Bu argümanlar, hedef sayfaya veri geçmek için kullanılabilir.

Get.to(() => OtherPage(), arguments: {'name': 'John'});

Hedef sayfada bu verilere erişmek için, Get.arguments özelliğini kullanabilirsiniz.

class OtherPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final args = Get.arguments;
    return Scaffold(
      appBar: AppBar(title: Text('Other')),
      body: Center(
        child: Text('Hello, ${args['name']}!'),
      ),
    );
  }
}
Ads Blocker Image Powered by Code Help Pro

Reklam Engelleyici Algılandı!

Reklamları engellemek için uzantı kullandığınızı tespit ettik.

Lütfen bu reklam engelleyiciyi devre dışı bırakarak ya da sitemize izin vererek bize destek olun.

Dikkat: VPN eklentiniz üzerinde de reklam engelleyici olabilir.