2014-02-22 42 views
0

我試圖使用getX()getY()函數獲取textView的位置。無法在android上獲取視圖的正確位置

正如從下面,在onCreate()方法中使用textView.getX()textView.getY()代碼看出返回一個值0.0

textView.getX()textView.getY()checkCoord回報32.0兩個getXgetY功能使用。

我無法理解getX()getY()的值的這種變化。請幫助。代碼如下所示:

public class MainActivity extends Activity { 
     TextView textView; 
     Button bt; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 

        textView = (TextView) findViewById(R.id.textView1); 

        bt = (Button) findViewById(R.id.button1); 

        System.out.println("Inside onCreate textView X : " + textView.getX()); 
        System.out.println("Inside onCreate textView Y : " + textView.getY()); 

        bt.setOnClickListener(new View.OnClickListener() { 

        @Override 
        public void onClick(View v) { 
        // TODO Auto-generated method stub 
        checkCoord(v); 

        } 
        }); 

     } 

     @Override 
     public boolean onCreateOptionsMenu(Menu menu) { 
      // Inflate the menu; this adds items to the action bar if it is present. 
      getMenuInflater().inflate(R.menu.main, menu); 
      return true; 
     } 

     public void checkCoord(View view) { 

      System.out.println("Inside checkCoord textView X : " + textView.getX()); 
      System.out.println("Inside checkCoord textView Y : " + textView.getY()); 

     } 

} 
+0

需要textview的位置? – Piyush

+0

在調用'onLayout()'之後,View's將會有x,y的位置。並且你在'onCreate()'中獲得了正確的值,因爲繪圖仍然沒有執行...... –

回答

相關問題