μλ
νμΈμ @sarbagyastha μ
λλ€. μ΄μ λ²μ 6.0μ μ¬μ©νλ €κ³ μλνμ§λ§ "videoId"λ₯Ό 컨νΈλ‘€λ¬μ μ λ¬ν κ²μ 보μμ΅λλ€. νΉν μ¬λλ€μ΄ κ·Έλ κ² λ§ν κ²μ΄λΌκ³ μκ°νλ μ μν©μμλ μ’μ κ²½νμ΄ μλλΌκ³ μκ°ν©λλ€. λ΄ μλ리μ€μμ λ΄ "videoId"λ listview.builderλ₯Ό μ¬μ©νκ³ APIμμ λ°μ΄ν°λ₯Ό κ°μ Έμ€κΈ° λλ¬Έμ λ΄ λͺ©λ‘ μμΈ μμ μμ΅λλ€. λ°λΌμ listview μΈλΆμ "videoId"λ₯Ό 컨νΈλ‘€λ¬μ 맀ννλ κ²μ κ±°μ λΆκ°λ₯ν©λλ€. λλ λΉμ μ΄ κ°μ μ μν΄ μ΄ λ³κ²½μ νλ€κ³ νμ νμ§λ§ "youtubeplayer" μμ "videoId"κ° μλ κ²μ΄ λ λ«λ€κ³ μκ°ν©λλ€.
μ΄ νλ₯ν λμκ΄μ λ€μ ν λ² κ°μ¬λ립λλ€.
@Xoshbin μΌκ΄μ±μ μ μ§νκ³ (곧 νλ¬ν° μΉμ λν μ§μμ μΆκ°ν μμ μ΄λ―λ‘) YouTube IFrame Player APIμ λμκ³Ό μΌμΉμν€κΈ° μν΄ videoId
λ₯Ό 컨νΈλ‘€λ¬λ‘ μ΄λνμ΅λλ€.
λΉλμ€ λͺ©λ‘ λ¬Έμ μ λ°λΌ μ루μ μ΄ μ¬κΈ°μ μμ΅λλ€ .
@sarbagyastha λλ κ·Έκ²μ νμΈνλ€λ κ²μ μκ³ μμ΅λλ€. κ·Έλ¬λ λ΄ μν©μμλ λΉλμ€ IDκ° "listview.builder" μΈλ±μ€ μμ μμΌλ―λ‘ νΉν 컨νΈλ‘€λ¬κ° λͺ©λ‘ 보기 μΈλΆμ μμ λ 컨νΈλ‘€λ¬μ 맀ννλ κ²μ΄ κ±°μ λΆκ°λ₯ν©λλ€. μ λ§μ μ΄ν΄νμ ¨λμ§ λͺ¨λ₯΄κ² μ΅λλ€.
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),
),
);
λ€λ₯Έ κ³³μμ 컨νΈλ‘€λ¬λ₯Ό μ¬μ©νμ§ μλ κ²½μ° μ΄λ κ² ν μ μμ΅λλ€.
@sarbagyastha κ°μ¬ν©λλ€ κ·Έλ κ² μλνμ΅λλ€ :)