2012-02-02 72 views
2

我有一個按鈕的活動,我只是想通過gps/internet/etc獲取當前用戶位置的按鈕,並顯示與這些座標吐司。就是這樣,只需檢查一次,並顯示出來。每次點擊按鈕時,應該更新並顯示座標。Android - 如何根據需求獲取當前用戶座標/位置?

我該怎麼做?我在清單中

"android.permission.INTERNET" 
"android.permission.ACCESS_FINE_LOCATION" 
"android.permission.ACCESS_NETWORK_STATE" 
"android.permission.ACCESS_COARSE_LOCATION" 

的logcat的只能說明無法應用程序啓動時獲取連接工廠客戶一些很難理解的LocationManager(如果這就是我應該使用)

我有這些。該應用程序首先顯示了一個mapview,並且工作正常,所以我不知道該錯誤是否是我的問題。

我所做的:

... 
LocationManager mlocManager = 

(LocationManager)getSystemService(Context.LOCATION_SERVICE); 
LocationListener mlocListener = new MyLocationListener(); 
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener); 
.... 
    public class MyLocationListener implements LocationListener 
    { @Override public void onLocationChanged(Location loc) 
{   
TextView textView = (TextView) findViewById(R.id.textView2); 
textView.setText("Latitud: "+loc.getLatitude()+" , Longitud"+loc.getLongitude()); 
} 
... 
} 

它不改變 textview2值

+3

StackOverflow用於編程問題。這不是一個問題。 – CommonsWare 2012-02-02 14:53:15

+0

編輯標題。對不起* – 2012-02-02 14:57:49

+1

當GPS芯片得到修復並且操作系統決定發送它時,位置被更新並且onLocationChanged方法運行,而不是當你按下按鈕時。 – NickT 2012-02-02 15:16:10

回答

0

使用全局變量onLocationChanged(Location l)onClick()關你瑟值的按鈕。該值將始終被實現。