3

ListView에서 많은 비디오를 재생하고 싶습니다. 애플 리케이션 "포도 나무"처럼. TextureView 및 MediaPlayer를 사용하여 비디오를 표시합니다. 우리는 ListView가 뷰를 재사용한다는 것을 알고 있습니다. 이 메커니즘 때문에 나는 문제가 생긴다. 예 : 보이는 영역에서 나는 비디오 A를 재생할 때, 위로 스크롤 할 때 비디오 A가 보이지 않을 것입니다. 그래서 비디오 B를 재생하려고합니다. ListView는 재생 비디오 A에 대한보기를 재사용 할 수 있습니다. 나는 비디오 B를 재생하기 시작합니다. 처음에는 A의 이미지가 표시되고 비디오 B의 내용으로 새로 고침됩니다. 이것이 내 문제입니다. 나는 TextureView의 내용을 청소하는 방법을 모른다. 어떤 몸이라도이 문제를 해결하는 방법을 알려줍니다. 대단히 감사합니다!textureview의 내용을 정리하는 방법. listview에서 textureview와 함께 mediaplayer를 사용합니다.

답변

3

ViewGroup 클래스의 removeView(View v)을 사용하십시오. 그런 다음 올바른 내용으로보기를 다시 시작하십시오.

+2

이 문제를 해결할 수있는 또 다른 방법이 있습니다. ListView에서 재사용 뷰의 기능을 사용하고 싶습니다. 새보기를 다시 시작하면 일부 컴퓨팅 성능이 저하 될 수 있습니다. – smile2you

+1

@ smile2you 문제에 대한 해결책을 찾았습니까? 나는 포도 나무처럼 listview에서 비디오를 재생하려고합니다. 하나의 액티비티에서 하나의 비디오를 재생하기 위해 텍스쳐 뷰를 사용하면 잘 동작하지만, listview에서 재생하려고하면 결코 작동하지 않습니다. 표면 텍스처는 항상 null입니다. – aNoviceGuy

+0

@aNoviceGuy 해결책을 찾았습니까? VideoViews 및 ListView를 사용하려고하지만 단순히 서로 잘 어울리지 않습니다. – Piotr