簡體   English   中英

獲取表行內動態TextView的寬度

[英]Getting the width of a Dynamic TextView inside a Table Row

我被困在這里試圖在設置一些隨機文本后獲取表行中TextView的寬度 我正在使用getWidth() ,但它總是返回零。 有沒有辦法找出動態創建的TextView的寬度。

這是我的代碼。

 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    customer_id=(TextView)findViewById(R.id.customer_id);
    comapny_name=(TextView)findViewById(R.id.compnay_name);
    line1=(ImageView)findViewById(R.id.line1);




    TableLayout tl=(TableLayout)findViewById(R.id.linlay);
    TableRow tr1 =null;
    for(int i=0;i<20;i++)
    {
        tr1 = new TableRow(this);
    tr1.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
    TextView textview = new TextView(this);
    textview.setText("data");
    textview.setTextColor(Color.YELLOW);
    textview.setTextSize(30);


    TextView textview1 = new TextView(this);
    textview1.setText("data1");
    textview1.setTextColor(Color.YELLOW);
    textview1.setTextSize(30);

    tr1.addView(textview);
    tr1.addView(textview1);
    tl.addView(tr1);

int width=textview.getWidth();
Log.i("Width",width+"");

}     

好吧,實際上布局是放大的但尚未繪制,因此為了獲得寬度,您將必須

@Override 
public void onWindowFocusChanged(boolean hasFocus) 
{ 
     // TODO Auto-generated method stub 
     super.onWindowFocusChanged(hasFocus);
     System.out.println("...111Height..."+textview.getMeasuredWidth()); 
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM