我正在创建一个三角形(自定义视图),然后将其添加到父视图(RelativeLayout)。我在这里面临的问题是查看父级的全屏,我如何将自定义视图的大小设置为该边界。三角形从视图延伸,它有触摸监听器。我动态地改变三角形的大小。
我被添加到该视图中的 onMeasure() 但它需要一些固定的宽度和高度..
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
Log.d(TAG, "Width spec: " + MeasureSpec.toString(widthMeasureSpec));
Log.d(TAG, "Height spec: " + MeasureSpec.toString(heightMeasureSpec));
int widthMode = MeasureSpec.getMode(widthMeasureSpec);
int widthSize = MeasureSpec.getSize(widthMeasureSpec);
int heightMode = MeasureSpec.getMode(heightMeasureSpec);
int heightSize = MeasureSpec.getSize(heightMeasureSpec);
int chosenWidth = chooseDimension(widthMode, widthSize);
int chosenHeight = chooseDimension(heightMode, heightSize);
int chosenDimension = Math.min(chosenWidth, chosenHeight);
setMeasuredDimension(chosenDimension, chosenDimension);
}
当用户更改视图的大小时,我想根据视图的大小设置自定义视图的宽度和高度。看图像。