如何更改自定义SurfaceView宽度和高度
答
setLayoutParams(new LayoutParams(width,height)); 我希望这会工作
答
我有同样的问题。但是这肯定是有效的,只需要检查你正在设置的LaoutParams类型。我有同样的问题,因为我使用FrameLaoutPrams而不是LayoutParams。我需要设置这样的:
android.widget.FrameLayout.LayoutParams params = new android.widget.FrameLayout.LayoutParams(width, height);
surface.setLayoutParams(params);
+0
这是一个正确的答案(假设表面被包裹到FrameLayout中)。你也可以指定重力为3-rd参数(比如说Gravity.CENTER) – 2016-04-13 15:30:55
答
继种候选条件的LayoutParams的,也许这是有帮助的人:
android.widget.TableRow.LayoutParams;
android.widget.TableLayout.LayoutParams;
android.widget.RelativeLayout.LayoutParams;
android.widget.RadioGroup.LayoutParams;
android.widget.GridLayout.LayoutParams;
android.widget.Gallery.LayoutParams;
android.widget.FrameLayout.LayoutParams;
android.widget.AbsoluteLayout.LayoutParams;
android.widget.AbsListView.LayoutParams;
android.widget.LinearLayout.LayoutParams;
android.view.ViewGroup.LayoutParams;
android.app.ActionBar.LayoutParams;
android.support.v4.view.ViewPager.LayoutParams;
android.view.WindowManager.LayoutParams
答
这是做正确的方式:
surfaceView.getHolder().setFixedSize(width, height);
我已经做到了,但没有成功。 – 2010-11-03 05:11:33