Flutter ramka uchun qo'llanma 1-bob. Flutterga kirish Flutter nima. O'rnatish


GestureDetector va chertish bilan ishlash



Yüklə 1,13 Mb.
səhifə20/27
tarix02.01.2022
ölçüsü1,13 Mb.
#47074
1   ...   16   17   18   19   20   21   22   23   ...   27
Flutter

GestureDetector va chertish bilan ishlash

Flutter-da biz boshqa vidjet uchun chertish funksiyasini qo'shishimiz mumkin. Buning uchun GestureDetector sinfidan foydalaniladi.


Ushbu sinfning konstruktori ko'plab parametrlarni o'z ichiga oladi, shuning uchun biz eng asosiylarini ko'rib chiqamiz. Xususan, bola parametri bosish qobiliyati qo'shilgan ichki vidjetni o'rnatishga imkon beradi. Agar GestureDetector-da ichki o'rnatilgan vidjet bo'lmasa, u ota-konteynerning butun maydonini egallab, uning butun maydonini bosish mumkin qiladi.
GestureDetector konstruktori barcha mumkin bo'lgan bosishlarni boshqarish uchun turli parametrlarni taqdim etadi. Oddiy teginish uchun harakat onTap parametri yordamida o'rnatilishi mumkin.
Masalan, Konteyner vidjetini bosish mumkin qilish uchun GestureDetector-dan foydalanamiz:

1

2

3



4

5

6



7

8

9



10

11

12



13

14

15



16

17

18



19

20

21



22

23

24



25

26

27



28

29

30



31

32

33



34

35

36



import 'package:flutter/material.dart';

 

void main() {



  runApp(MaterialApp(

      home:  Scaffold(

        body: Counter(),

        appBar: AppBar(title: Text("METANIT.COM")),)

  ));

}

class Counter extends StatefulWidget{



 

  Counter({ Key key}) : super(key: key);

  @override

  _CounterState createState() => _CounterState();

}

class _CounterState extends State{



 

  int _value = 0;

 

  _increaseValue(){



    setState(() =>_value++);

  }


  @override

  Widget build(BuildContext context) {

 

    return GestureDetector(



      onTap: _increaseValue,

      child: Container(

        color: Colors.lightBlueAccent,

        padding: const EdgeInsets.all(10),

        margin: const EdgeInsets.all(10),

        child: Text("Value: $_value", style: TextStyle(fontSize: 22)),

      ),

    );


  }

}


Bunday holda, onTap klassi parametri Counter vidjetining holatini o'zgartiruvchi _increaseValue () usuliga ishora qiladi. Xususan, u _value o'zgaruvchisining qiymatini bittaga oshiradi.
GestureDetector uchun ichki vidjet Konteyner elementida joylashgan bo‘lib, u o‘z navbatida Matn vidjetini o‘z ichiga oladi. Va Matn _value o'zgaruvchisining qiymatini chiqaradi. Ya'ni, Konteyner vidjeti egallagan maydonni bosish orqali _increaseValue () usuli ishga tushadi.

Xuddi shunday, siz bosishlarni murakkabroq ierarxiyaga ega bo'lgan boshqa vidjetlarga qo'shishingiz yoki bosishlarni boshqaradigan o'zingizning vidjetlaringizni yaratishingiz mumkin.




Yüklə 1,13 Mb.

Dostları ilə paylaş:
1   ...   16   17   18   19   20   21   22   23   ...   27




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin