Youtube_player_flutter: Diskusi: mengapa "videoId" ada di dalam pengontrol?

Dibuat pada 4 Nov 2019  ·  4Komentar  ·  Sumber: sarbagyastha/youtube_player_flutter

Hai @sarbagyastha . Kemarin saya mencoba menggunakan versi 6.0 tetapi saya melihat bahwa Anda telah meneruskan "videoId" ke pengontrol yang menurut saya itu bukan pengalaman yang baik terutama dalam situasi saya yang menurut saya kebanyakan orang akan mengatakan itu juga. dalam skenario saya, "videoId" saya ada di dalam indeks daftar saya karena saya menggunakan listview.builder dan mengambil data dari API. jadi hampir tidak mungkin untuk memetakan "videoId" di luar tampilan daftar ke pengontrol. Saya yakin Anda membuat perubahan ini untuk penyempurnaan, tetapi menurut saya lebih baik memiliki "videoId" di dalam "youtubeplayer".
Terima kasih untuk perpustakaan yang luar biasa ini lagi.

question

Semua 4 komentar

@Xoshbin Memindahkan videoId ke pengontrol untuk menjaga konsistensi (karena saya akan segera menambahkan dukungan untuk web flutter) dan untuk mencocokkan perilaku YouTube IFrame Player API.

Sesuai masalah Anda dengan daftar video, solusinya ada di sini .

@sarbagyastha saya tahu saya juga memeriksanya. tetapi dalam situasi saya, id video berada di dalam indeks "listview.builder" sehingga hampir tidak mungkin untuk memetakannya ke pengontrol terutama ketika pengontrol berada di luar tampilan daftar. Saya tidak yakin apakah Anda mengerti apa yang saya katakan.

ListView.separated(
        itemBuilder: (context, index) {
          return YoutubePlayer(
            controller: YoutubePlayerController(initialVideoId: data[index]),
            actionsPadding: EdgeInsets.only(left: 16.0),
            bottomActions: [
              CurrentPosition(),
              SizedBox(width: 10.0),
              ProgressBar(isExpanded: true),
              SizedBox(width: 10.0),
              RemainingDuration(),
              FullScreenButton(),
            ],
          );
        },
        itemCount: data.length,
        separatorBuilder: (context, _) => SizedBox(height: 10.0),
      ),
    );

Anda dapat melakukan seperti ini, jika Anda tidak menggunakan pengontrol di tempat lain.

@sarbagyastha Terima kasih itu berhasil seperti itu :)

Apakah halaman ini membantu?
0 / 5 - 0 peringkat