2015-05-26 2 views
0

Я пытаюсь получить положение кнопок. , но я получаю 0.0 в качестве позиции.позиция кнопки Android не работает для меня

Я предполагал, что как только я создал экземпляры Button, и назову их к кнопкам, ранее расположенным в xml по всему экрану, тогда я бы получил абсолютное положение кнопок ..... не так. ....

.... что я делаю неправильно, пожалуйста ????

общественный класс MainActivity расширяет активность реализует View.OnTouchListener {

private static final int[] idArray = {R.id.button1, R.id.button2, R.id.button3, R.id.button4, R.id.button5, R.id.button6, 
     R.id.button7, R.id.button8, R.id.button9, R.id.button10, R.id.button11, R.id.button12, 
     R.id.button13, R.id.button14, R.id.button15, R.id.button16, R.id.button17, R.id.button18, 
     R.id.button19, R.id.button20 
}; 

final Button[] button = new Button[idArray.length]; 
final Rect[] myRect = new Rect[idArray.length]; 


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



    for (int t = 1; t < idArray.length; t++) { 

     button[t] = (Button) findViewById(idArray[t]); 

     Log.d("", "left of button" +button[t].getX()); 


     myRect[t] = new Rect(); 
     myRect[t].set((int)button[t].getX(), (int)button[t].getY(), button[t].getRight(), button[t].getBottom()); 
     Log.d("", "" + myRect[t]); 
    } 

} 

)

ответ

0

Ваше мнение (кнопка) не является частью макета еще. получить место при готовности:

button[t].post(new Runnable() { 
    Log.d("", "left of button" +button[t].getX()); 
}); 
+0

Спасибо !!!! но почему Runnable ??? мне нужно сделать нить ??. – edmolko