2012-06-10 1 views
1

내 layout.xml은 TextView와 Button이 몇 개인 FrameLayout으로 구성되어 있으며 MediaController처럼 사용하며 SurfaceView도 포함되어 있습니다. 코드에서 은 내가 MediaPlayer를을 생성하고이 같은 디스플레이로 서피스 뷰 SurfaceView의 SurfaceHolder에를 설정SurfaceView 이슈

surfaceView = (SurfaceView) findViewById(R.id.video_surfaceview); 
surfaceHolder = surfaceView.getHolder(); 
surfaceHolder.addCallback(this); 
mediaPlayer.setDisplay(surfaceHolder); 

이 비디오를 표시하기위한 위대한 작품을하지만, 내가 전화 할 때 :

overLayTextView.setVisibility(View.Gone); 

을 overLayTextView은 여전히 볼 수 있습니다. Ive는 overLayTextView의 뷰 상태를 가져 오려고 시도했으며 Gone으로 설정됩니다. 나는 SurfaceView가 그것 (일반적으로 20 + 초 후에 일어나는)이 느껴질 때까지 그 그림 상태를 업데이트하지 않는다고 생각한다. 그래서 내 질문에 SurfaceView 또는 SurfaceHolder에서 자신의 콘텐츠 중 일부를 "다시 그려야"한다고 알릴 수있는 것이 있다면? (명백하게 비디오가 아니다). 보기가 숨겨져 있기 때문에이 문제가되지 않지만 서피스 뷰 SurfaceView에이 Apparantly 히하지 레이아웃 "없음 표면"에서

overLayTextView.setText(mediaPlayer.getDuration()); 

:

답변

0

난 그냥 정지라는 비디오 정보와 오버레이를 업데이트 스레드를 실현 케이스 (적어도 일부 장치에서는, 이상하게 충분히).

호프가 도움이 되었으면 좋겠다.