View.getLocationInWindow() only returns Y (and sometimes not even X)

by ClarkBattle » Fri, 29 Jan 2010 06:50:17 GMT


Sponsored Links
 I have an app with the following code using android 2.0.1

int[] loc = new int[2];

Button btn = (Button) findViewById( R.id.btn3 );
if( btn != null )
    btn.getLocationInWindow( loc);

Log.i("Where?","x=" + where[0] + " y=" + where[1] );

This logs "x=0 y=88" but R.id.btn3 is in the middle of the screen!

I was experiencing this in android 2.0.1 so I wrote the following test
app in android 2.1 that logs the XY coordinates of a button in the
middle of the screen.

This logs "x=0 and y=0"

public class TestLoc extends Activity
{
        @Override
        public void onCreate( Bundle savedInstanceState )
        {
                super.onCreate( savedInstanceState );
                setContentView( R.layout.main );
        }

        @Override
        public void onStart()
        {
                super.onStart();

                int[] where = new int[2];
                Button view = (Button) findViewById( R.id.btnThree );
                if( view != null )
                {
                    view.getLocationInWindow( where );
                    Log.i("Where?","x=" + where[0] + " y=" + where[1] );
                }
        }
}

<?xml version="1.0" encoding="utf-8"?>
<TableLayout
    xmlns:android=" http://schemas.android.com/apk/res/android" ;
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <TableRow android:id="@+id/rowOne">
      <Button android:id="@+id/btnOne"/>
    </TableRow>

    <TableRow android:id="@+id/rowTwo">
      <Button android:id="@+id/btnTwo"/>
      <Button android:id="@+id/btnThree"/>
    </TableRow>
</TableLayout>

Wha's up?  Is there a reliable way to get the window coordinates of
any view?

Thanks for reading,
Clark

--



Other Threads

1. Using a PC to Control Android

Hi,
Is there a way to control the Android HTC from a PC?
I basically want to use my PC screen/keyboard to see/type into my T-
mobile g1 phone.
Thanks

--~--~---------~--~----~------------~-------~--~----~

2. want code

hello please provide me a code 2 play video files in android..i just
want put video files in res/raw folder.. so it need to play that
files..
please help me to write a code of this type..

--~--~---------~--~----~------------~-------~--~----~

3. Does Android support Auto-IP functionality? (Zero Configuration Networking)

4. SD card stuck in read-only on non-rooted non-dev phone.

5. Can't take screen capture

6. How to create a "Settings-style" kind of button/layout?

7. Spacing between elements in LinearLayout