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

时间:2013-07-18 17:48:48

标签: 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的宽度来填充整个屏幕宽度。然后高度应该与宽度匹配 - 因此,自定义视图应始终绘制为正方形。

我该怎么做?

1 个答案:

答案 0 :(得分:4)

覆盖onMeasure中的CoordinateGridView功能:

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

有关完整示例,请参阅https://github.com/chiuki/android-square-view

相关问题