2016-09-29 3 views
-3

При воспроизведении видео на весь экран в макете исчезают другие виды, но getVisibility() возвращается в VISIBLE и isShown() вернулся к true. Кто встретил ту же проблему или у вас есть хорошее решение, скажите, пожалуйста, спасибо.View is invisible

Это activity_player.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:id="@+id/player" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/white"> 

<!--Used to play the video--> 
<com.mediaplay.MySurfaceView 
    android:id="@+id/videoView" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

<!--Used to play the marquee--> 
<com.mediaplay.AutoScrollTextView 
    android:id="@+id/marqueeView" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:textColor="@android:color/black" 
    android:textSize="23sp" 
    /> 
    </RelativeLayout> 

Это код (код слишком много, я могу только захватить значительную часть):

// play video 
public void start() { 
    if (mMediaPlayer != null && mIsPrepared) { 
     LOG("MediaPlayer start"); 
     mMediaPlayer.start(); 
    } 
} 

// play marquee, it extends TextView 
private void initTextView() { 

    if (marquee == null) return; 

    marquee.requestFocus(); 
    marquee.setSelected(true); 
    marquee.bringToFront(); 
    marquee.startScroll(); 
} 

public void startScroll() { 
    isStarting = true; 
    invalidate(); 
} 
  1. Я пытаюсь использовать FrameLayout вместо этого, он Безразлично 't work
  2. Вот некоторые странные вещи, когда шоу-шоу или всплывающее диалоговое окно можно показать, но когда они исчезнут, marqueeview исчезнет.
  3. Одно можно сказать наверняка, не называйте mediaplayer.start(), marqueeview может показать, но как только он называется, он исчезнет.
  4. Android4.2.2 нет probleams, android4.4.4 будет иметь probleams
+1

Некоторые кодексы будут лучше видеть, вы знаете ...:/ –

+0

@Victor: Пожалуйста, разместите код и (палец вверх), если вы используете FrameLayout, тогда ваш вид мог бы пойти в фоновом режиме, поэтому попробуйте, YOUR_VIEW. на передний план(); – Pawan

ответ

0

Может быть, они не исчезают, но видео просто по сравнению с другими видами? Вы можете использовать относительный макет, чтобы убедиться, что просмотры находятся над видео.

Код был бы хорош, хотя.

+0

Я использовал относительный макет, и я обнаружил некоторые странные вещи, когда вы показываете тост или всплываете диалоговое окно, представление может отображаться, и я вызвал метод bringToFront(), он не работает – Victor