我想在textView中的文本getHightgetWidth。我引用了许多主题,但尚未发现我的问题。在某些主题中,可以看到一些解决方案,例如:

    @Override
public void onWindowFocusChanged(boolean hasFocus) {
   // TODO Auto-generated method stub
   super.onWindowFocusChanged(hasFocus);
   Log.d("line", ""+selectA.getLineCount());
   Log.d("hight", "" +selectA.getHeight());
}


要么

   TextView upV = (TextView)findViewById(R.id.up);
   ViewTreeObserver vto = upV.getViewTreeObserver();
    vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {

            Log.d("W ", ""+upV.getWidth());
            Log.d("H ", ""+upV.getHeight());
        }
    });


这些解决方案可根据我的需要获得价值,但并非每次应用程序运行时都会获得价值,有时会return 0。请帮我

最佳答案

您正在呼叫getWidth()getHeight()太早。 UI尚未调整大小并在屏幕上布局,因此,方法正确返回0。

10-08 03:45