🙂 İNSANLARIN EN HAYIRLISI INSANLARA FAYDALI OLANDIR 🙂

Ramazan HABER / FLUTTER / GlobalKey kullanımı

1-) FLUTTER - GlobalKey kullanımı

 

import 'package:flutter/material.dart';

class GlobalPage extends StatefulWidget {
  
const GlobalPage({Key? key}) : super(key: key);

  
@override
  
_GlobalPageState createState() => _GlobalPageState();
}

class _GlobalPageState extends State<GlobalPage> {
  
final sayacWidgetKey = GlobalKey<SayacWidgetState>();

  
@override
  
Widget build(BuildContext context) {
    
return Scaffold(
      appBar:
null,
      body:
Center(
        child:
Container(
          child:
Column(
            mainAxisAlignment:
MainAxisAlignment.center,
            children: [
              
Text(
                
"BUTTONA BASILMA MİKTARI",
                style:
TextStyle(fontSize: 25, fontWeight: FontWeight.bold),
              ),
              
SayacWidget(
                key:
sayacWidgetKey,
              ),
              
Text(sayacWidgetKey.currentState?.count.toString() ?? "0"), // nul değilse count yaz nul ise sıfır yaz
            
],
          ),
        ),
      ),
      floatingActionButton:
FloatingActionButton(
        onPressed: () {
          
sayacWidgetKey.currentState!.arttir();
        },
        child:
Icon(Icons.add),
      ),
    );
  }
}

class SayacWidget extends StatefulWidget {
  
const SayacWidget({Key? key}) : super(key: key);

  
@override
  
SayacWidgetState createState() => SayacWidgetState();
}

class SayacWidgetState extends State<SayacWidget> {
  
int count = 0;

  
void arttir() {
    setState(() {
      
count++;
    });
  }

  
@override
  
Widget build(BuildContext context) {
    
return Text(count.toString(),
        style:
TextStyle(fontSize: 25, fontWeight: FontWeight.bold));
  }
}

 

 2022 Şubat 21 Pazartesi
 341