使用android,是否有人知道如何在屏幕上显示之前以像素为单位获取textview的确切宽度? (编程) 我在互联网上搜索了很多但我没有找到任何工作。
谢谢
我试过的帖子的链接:
答案 0 :(得分:3)
我认为你应该使用OnGlobalLayoutListener
,它通常用于在绘制之前找出视图的高度和宽度。
例如,
yourTextView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
yourTextView.getWidth();
}
});
答案 1 :(得分:2)
最好发送一些代码。然后我们可以帮助你更多。 但我认为你可以使用这些方法:
yourText.measure(0, 0);
然后是这些代码:
int width = view.getMeasuredWidth();
int height = view.getMeasuredHeight();
答案 2 :(得分:0)
试试这个。
textView.setText("your text");
textView.measure(0, 0);
textView.getMeasuredWidth();
textView.getMeasuredHeight();
答案 3 :(得分:0)
正如 Nargess 所说,您最好使用测量视图宽度和高度的方法,如下面的代码:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
view.measure(size.x, size.y);
int width = view.getMeasuredWidth();
int height = view.getMeasuredHeight();