7

画面が回転した後、ビュー オブジェクトの 1 つの高さが変更されました。高さの値をピクセル単位で知りたいです。

このonConfigurationChangedメソッドは、ビューが回転を終了する前に呼び出される可能性があります。したがって、このメソッドでビュー サイズを測定すると、サイズは以前の回転の値のままです。

問題は、アクティビティを再構築せずに回転終了後にビュー サイズの値を取得する方法です。

4

1 に答える 1

4

考えられる解決策の 1 つ:

private int viewHeight = 0;
View view = findViewByID(R.id.idOfTheView);
view.getViewTreeObserver().addOnGlobalLayoutListener( 
    new OnGlobalLayoutListener(){
        @Override
        public void onGlobalLayout() {
            viewHeight = view.getHeight();
        }

また

@Override
public void onResume(){
  int viewHeight = 0;
  View view = findViewByID(R.id.idOfTheView);
  viewHeight  = view.getHeight();
}
于 2013-07-26T08:48:43.087 に答える