2016-11-30 71 views
0

我试图建立在Android Studio中的圆圈videoview像下图中:如何建立在Android Studio中圈videoview

the image I want to get

但我得到这个:

the image I got

这是我layout_xml codechip:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:id="@+id/relative_parent" 
android:orientation="vertical" 
android:background="@android:color/holo_orange_dark" 
android:weightSum="1"> 

<VideoView 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_width="match_parent" 
    android:layout_height="359dp" 
    android:layout_centerInParent="true" 
    android:focusable="false" 
    android:focusableInTouchMode="false" 
    android:id="@+id/call_screen" 
    android:background="@drawable/circle_videoview" 
    android:layout_weight="0.54" /> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_weight="1" 
    android:layout_height="wrap_content"> 


    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     app:srcCompat="@drawable/drop" 
     android:id="@+id/drop_call_btn" 
     android:layout_weight="1" 
     android:background="@android:color/transparent" 
     android:layout_gravity="center" /> 

    <TextView 
     android:text="OPEN" 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:id="@+id/open_call_btn" 
     android:layout_weight="0.05" 
     android:textSize="24sp" 
     android:textColor="@color/colorPrimary" 
     android:textStyle="normal|bold" 
     android:gravity="center" 
     android:background="@drawable/circle_button" 
     android:layout_margin="10dp" /> 

    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     app:srcCompat="@drawable/mute" 
     android:id="@+id/mute_call_btn" 
     android:layout_weight="1" 
     android:background="@android:color/transparent" 
     android:layout_gravity="center" /> 
    </LinearLayout> 

</LinearLayout> 

circle_videoview.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:innerRadius="0dp" 
    android:shape="ring" 

    android:thicknessRatio="1.9" 
    android:useLevel="false" > 

    <solid android:color="@android:color/transparent" /> 

    <stroke 
     android:width="2dp" 
     android:color="@android:color/darker_gray" /> 

</shape> 
+0

顺便说一句,你不应该使用一个确切的大小的视频。这里屏幕的百分比也许更合适。 –

回答

0

我建议不要接触VideoView自己:我认为在绘制背景不会影响视频流。

你可以在一些imageview之后放置videoview,在其中你可以设置你的界面图像(中心有透明圆圈)或者你的形状是可绘制的。

+0

你能为我提供一些代码片吗 –

+0

我是android studio新手 –