我有一個SurfaceView
,我想要顯示20dp
大小的邊框,這個邊框將圍繞SurfaceView
流動。我需要16:9
長寬比的'SurfaceView',所以我保留SurfaceView
的尺寸爲161x286
,這是16:9
的比例。Android在SurfaceView周圍應用邊框
要在表面視圖周圍顯示邊框,我在XML中實現了以下內容。
<RelativeLayout
android:id="@+id/my_surface_view_holder"
android:layout_height="161dp"
android:layout_width="286dp"
android:padding="20dp"
android:focusable="true"
android:clickable="true"
android:background="#fff"
>
<SurfaceView
android:id="@+id/video_surface_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</RelativeLayout>
上面的代碼顯示SurfaceView
正確周圍的邊框,但它打破了16:視頻的9縱橫比,因爲我給的20dp
填充顯示邊框。
如果我根據邊框尺寸調整縱橫比,那麼邊框不是均勻設置,上/下不同,左/右不同。
所以我怎樣才能顯示邊界周圍的SurfaceView保持其縱橫比保持大小161x286。
謝謝。
我不確定我的理解。你想要背景,邊框還是表面?如何將RelativeLayout外部的邊界留在它的左側和右側? – Steelight
是的,我需要Surface的邊框,爲此我在相對佈局中添加了表面視圖,並且相對佈局具有背景圖像設置,以及作爲邊框到表面視圖的填充。這是我使用的技巧,但它打破了我的視頻的長寬比。 – User7723337
保持你的相對佈局高度和寬度分別爲(161 + 20),(286 + 20)。試試這個,我希望它能爲你工作。 –