Perbedaan Stateless dan Statefull Widget

Apa itu Stateless Widget?

Widget stateless adalah widget yang mendeskripsikan bagian dari antarmuka pengguna dengan membuat konstelasi widget lain yang mendeskripsikan antarmuka pengguna secara lebih konkret. Proses pembangunan berlanjut secara rekursif hingga deskripsi antarmuka pengguna benar-benar konkret.

Stateless widget berguna ketika bagian dari antarmuka pengguna gambarkan tidak bergantung pada apa pun selain informasi konfigurasi di obyek itu sendiri dan BuildContext dismana widget tersebut meningkat. Untuk komposisi yang dapat berubah secara dinamis, misalnya karena memiliki status clock-driven internal, atau bergantung pada beberapa status sistem, pertimbangkan untuk menggunakan StatefullWidget.

Contoh Code nya :

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return  new MaterialApp(
      title: 'Stateless Widget',
      home : new  Scaffold(
        body: new Container(
          color: Colors.blueAccent,
          child: new Container(
            color: Colors.lightGreen,
            margin: const
            EdgeInsets.all(30.0),
          ),
        ),
      )
    );
  }
}

Hasil running :

Apa itu Statefull Widget?

Widget stateful didefinisikan sebagai widget apa pun yang mengubah statusnya selama masa pakainya. Widget stateful berguna jika bagian dari antarmuka pengguna yang Anda gambarkan dapat berubah secara dinamis. Saat Flutter membuat StatefulWidget, itu membuat objek Status. Objek ini adalah tempat semua status yang bisa berubah untuk widget itu diadakan.

Konsep negara didefinisikan oleh dua hal:

  • Data yang digunakan oleh widget mungkin berubah.
  • Data tidak dapat dibaca secara sinkron saat widget dibuat.

Contoh code nya :

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}
class MyApp extends StatefulWidget{
  @override
    _appliacationState createState()=>
        _appliacationState();

  }

class _appliacationState extends State<MyApp>{
  String txt='';

  @override
  void initState(){
    txt ='klik tombol ini';
    super.initState();
  }
  void method1(){
    setState(() {
      txt='The text is changed';
    });
  }

  @override
  Widget build(BuildContext context) {
    // TODO : implement  build
    return new MaterialApp(
      title: 'Stateful Widget',
      home : new  Scaffold(
        body:  new Center(
          child: new RaisedButton(onPressed: ()
          {method1();}, child: new Text(txt),),
        ),
      )
    );
  }

}


Hasil running :

spot_imgspot_img

Subscribe

Related articles

Memanfaatkan Include Dan Required Function Pada PHP

 Halo teman-teman sobat baraja udacoding, selamat datang kembali di...

CARA MEMBUAT KONEKSI DATABASE DI PHP

Halo teman-teman, selamat datang kembali di baraja uda coding....

Pseudo Class Dan Penggunaannya part 2

Anchor Pseudo-classesMerubah link dengan beberapa cara yang berbeda tergantung...

Gridview and Container with Random Colors

Hallo sobat flutter, selamat pagi, siang, sore, malam. Apa...

Mengenal Pseudo Element Dan Penggunaannya part 2

Seperti yang kita semua ketahui tentang Pseudo Element pada artikel...
spot_imgspot_img

LEAVE A REPLY

Please enter your comment!
Please enter your name here