Java Android:使自定义视图的宽度和高度相等

Java Android:使自定义视图的宽度和高度相等,java,android,android-view,Java,Android,Android View,我使用XML中的自定义视图(CoordinateGridView),如下所示: <com.android.catvehicle.CoordinateGridView android:id="@+id/coordinateGrid" android:layout_width="fill_parent" android:layout_height="fill_parent"/> 我试图获得CoordinateGridView的宽度,以填充整个屏幕的宽度。然后

我使用XML中的自定义视图(CoordinateGridView),如下所示:

<com.android.catvehicle.CoordinateGridView
    android:id="@+id/coordinateGrid"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>

我试图获得CoordinateGridView的宽度,以填充整个屏幕的宽度。然后,高度应与宽度匹配——因此,自定义视图应始终绘制为正方形


如何执行此操作?

覆盖
CoordinateGridView
中的
onMeasure
函数:

public void onMeasure(int widthSpec, int heightSpec) {
  super.onMeasure(widthSpec, heightSpec);
  int size = Math.min(getMeasuredWidth(), getMeasuredHeight());
  setMeasuredDimension(size, size);
}

有关完整示例,请参见。

覆盖
CoordinateGridView
中的
onMeasure
函数:

public void onMeasure(int widthSpec, int heightSpec) {
  super.onMeasure(widthSpec, heightSpec);
  int size = Math.min(getMeasuredWidth(), getMeasuredHeight());
  setMeasuredDimension(size, size);
}

有关完整示例,请参见。

这正是我想要的。谢谢你的快速回复!正是我想要的。谢谢你的快速回复!