Saya memiliki tombol tarik-turun ini di flutter:

DropdownButton(

value: _value,
    items: [
      DropdownMenuItem(
        child: Text("First Item"),
        value: 1,
      ),
      DropdownMenuItem(
        child: Text("Second Item"),
        value: 2,
      ),
      DropdownMenuItem(
          child: Text("Third Item"),
          value: 3
      ),
      DropdownMenuItem(
          child: Text("Fourth Item"),
          value: 4
      )
    ],
    onChanged: (value) {
      setState(() {
        _value = value; //here I get the error
      });
    })

Saya mendapatkan kesalahan berikut: A value of type 'Object?' can't be assigned to a variable of type 'int'.

Pada baris berikut: _value = value;

Bantuan apa pun dihargai.

0
Sam12 12 Mei 2021, 21:04

1 menjawab

Jawaban Terbaik

Anda perlu menentukan tipe value dengan generik pada konstruktor DropdownButton:

DropdownButton<int>(
...

Cara Anda saat ini memilikinya, DropdownButton tidak mengetahui jenis value yang seharusnya, jadi callback onChanged menyediakan jenis yang paling umum, Object?. Menambahkan parameter generik memberi tahu tombol bahwa ia seharusnya mengharapkan dan memancarkan nilai int.

1
Christopher Moore 12 Mei 2021, 18:24