2019.07.16
- ConstraintLayout.LayoutParams动态设置视图
- ConstraintLayout动态约束View位置
- 获取屏幕的宽高
- 获取当前视图宽高
- scrollTo与scrollBy前者只移动一次,后者可以调用一次移动一次
private void settingGlViewCall() {
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
ConstraintLayout.LayoutParams lp;
lp = new ConstraintLayout.LayoutParams(mRlGlSurfaceView.getLayoutParams());
if (originGlViewWith == mRlGlSurfaceView.getMeasuredWidth()) {
lp.width = dm.widthPixels;
lp.height = dm.heightPixels / 2;
} else {
lp.width = originGlViewWith;
lp.height = originGLViewHeight;
}
mRlGlSurfaceView.setLayoutParams(lp);
ConstraintLayout cl = findViewById(R.id.cl_origin);
ConstraintSet set = new ConstraintSet();
set.clone(cl);
set.connect(mRlGlSurfaceView.getId(), ConstraintSet.RIGHT, cl.getId(), ConstraintSet.RIGHT);
set.applyTo(cl);
}
private void settingGlViewCall() {
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
ConstraintLayout.LayoutParams lp;
lp = new ConstraintLayout.LayoutParams(mRlGlSurfaceView.getLayoutParams());
if (originGlViewWith == mRlGlSurfaceView.getMeasuredWidth()) {
lp.width = dm.widthPixels;
lp.height = (int) (dm.heightPixels * 0.55);
circleRecycle.setVisibility(View.GONE);
mClCenterLayout.scrollTo(0, -mClCenterLayout.getMeasuredHeight() / 2);
} else {
lp.width = originGlViewWith;
lp.height = originGLViewHeight;
circleRecycle.setVisibility(View.VISIBLE);
mClCenterLayout.scrollBy(0, mClCenterLayout.getMeasuredHeight() / 2);
}
mRlGlSurfaceView.setLayoutParams(lp);
ConstraintLayout cl = findViewById(R.id.cl_origin);
ConstraintSet set = new ConstraintSet();
set.clone(cl);
set.connect(mRlGlSurfaceView.getId(), ConstraintSet.RIGHT, cl.getId(), ConstraintSet.RIGHT);
set.applyTo(cl);
}
网友评论