Textview 文本视图透明度高于视频视图
我正在写一个应用程序,它运行在Android 4.0.3上,通过HDMI显示视频 我有一个着色的、透明的文本视图在视频视图上工作,但经过一系列看似无关的更改,我破坏了它,无法让它再次工作 我使用的是SetBackgroundColor,即Textview 文本视图透明度高于视频视图,textview,transparency,android-videoview,alpha,Textview,Transparency,Android Videoview,Alpha,我正在写一个应用程序,它运行在Android 4.0.3上,通过HDMI显示视频 我有一个着色的、透明的文本视图在视频视图上工作,但经过一系列看似无关的更改,我破坏了它,无法让它再次工作 我使用的是SetBackgroundColor,即 myTextView.setBackgroundColor( Color.argb ( 128, 128, 0, 0 ) ); 症状是TextView显示纯色背景(RGB 128,0,0)且没有透明度。如果我将alpha设置为0之间,背景将变得完全透明,但我
myTextView.setBackgroundColor( Color.argb ( 128, 128, 0, 0 ) );
症状是TextView显示纯色背景(RGB 128,0,0)且没有透明度。如果我将alpha设置为0之间,背景将变得完全透明,但我仍然可以在TextView中的文本轮廓上分辨出视频视图后面背景的颜色。例如,当我将alpha值设置为更高的值(如10)时,背景将变为纯色,即上面的示例将变为RGB(128,0,0)
我处理过很多事情,比如setAlpha(float)
,setBackgroundColor(Color)
,动态创建不同顺序的视图,用XML创建和排序视图,bringToFront()
,getBackground().setAlpha(int)
,android:background=“@android:Color/transparent”
所有这些都将不再成功
我构建了另一个简单的应用程序,删除了所有内容,试图找出发生了什么,但没有成功
XML布局
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frame"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<VideoView
android:id="@+id/videoScreen"
android:layout_height="fill_parent"
android:layout_width="fill_parent" >
</VideoView>
<TextView
android:id="@+id/textScreen"
android:layout_width="300sp"
android:layout_height="fill_parent"
android:background="#80800000"
android:text="@string/hello_world"
android:lines="400" >
</TextView>
</FrameLayout>
如果我理解正确的话,这应该会在运行的视频视图上生成一个红色的半透明文本视图,但我似乎无法让它工作
如果我删除VideoView并放置带有图片的ImageView,则透明度和背景色着色不起作用。我怀疑TextView比VideoView有些不寻常的地方
有人对我可能做错的地方有什么建议吗?还是要检查一下
我有什么明显的遗漏吗
一个简短的文本视图工作示例,在视频视图上使用背景色color.argb(128,128,0,0),如果有人有这样一个示例,我们将不胜感激
final MediaController mediaController = new MediaController( getWindow().getContext() );
videoView = ( VideoView )findViewById( R.id.videoScreen );
mediaController.setAnchorView( videoView );
videoView.setMediaController( mediaController );
videoView.setVideoPath( "/mnt/extsd/test-movie.mov" );
videoView.start();