我正在尝试向textview添加文本,我已将宽度设置为Wrap_content。我试图获得这个textview的宽度。但在所有情况下它都显示为0。如何在设置文本后获得文本视图的宽度。在Android中如何获取设置为Wrap_Content的Textview的宽度
的代码是:
LinearLayout ll= new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);
TextView tv = new TextView(this);
tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
ll.addView(tv);
tv.setText("Hello 1234567890-0987654321qwertyuio787888888888888888888888888888888888888888888888888");
System.out.println("The width is == "+tv.getWidth());// result is 0
this.setContentView(ll);
请建议。 在此先感谢。
什么其等效为API 8及以上? –
您可以继承TextView并覆盖onLayout()。从它调用super.onLayout()并保存TextView的宽度。这应该适用于任何API级别。 – Const
类需要API级别11(当前最小值为8):android.view.View.OnLayoutChangeListener –