我有一個表面視圖來執行一些繪圖工作。我的視圖支持放大/縮小功能。現在,當用戶通過手勢放大/縮小手指時,我想調整表面視圖的大小,我嘗試通過更改surfaceview的佈局參數來調整大小。儘管這有效,但速度很慢,在做調整工作時,我看到一些大的跳躍(滯後),這是不可用的。在這裏,我想知道如何有效地調整表面視圖的大小(沒有那個跳躍)?在運行時有效更改視圖大小
這裏狙擊我從結構上看,
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="match_parent"
android:fillViewport="true"
android:layout_above="@+id/bottomMenu"
android:layout_height="match_parent">
<MySurfaceView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</FrameLayout> ...
而且PARAMS更改代碼,
ViewGroup.LayoutParams params = surface.getLayoutParams();
params.height = (int) (750*factor);
surface.setLayoutParams(params);
你有沒有考慮過使用['TextureView'](https://developer.android.com/reference/android/view/TextureView.html)? – azizbekian
請參閱http://stackoverflow.com/a/21282056/4069985 –