2010-06-06 18 views
48

मैं कुछ कोड लिखने के लिए देख रहा हूं जो मैंने लिखा है और ऐसा करने के लिए मुझे एक प्रकार का स्थान बनाने की आवश्यकता है और इसे एक लंबा/लेट वैल्यू देने के लिए, लेकिन मुझे यकीन नहीं है कि मैं ऐसा कैसे करूंगा। कोई विचार?एंड्रॉइड: प्रकार "स्थान" के प्रकार को बदलने के लिए (इसे शून्य के बराबर बनाने के अलावा)

उत्तर

87

The API documentation इस पर काफी स्पष्ट है। सबसे पहले एक नया स्थान उदाहरण बनाने के लिए:

Location loc = new Location("dummyprovider"); 

और फिर सेटर तरीकों का उपयोग स्थान पैरामीटर आप की जरूरत है, जैसे स्थापित करने के लिए:

loc.setLatitude(20.3); 
loc.setLongitude(52.6); 
+4

क्या एक प्रदाता है? –

+0

स्थान लोक = नया स्थान (""); –

+1

@AdamJohns: प्रदाता को निर्दिष्ट करना चाहिए कि सटीक समन्वय ठीक से क्या हासिल हुआ। 'स्थान' ऑब्जेक्ट में यह केवल एक स्ट्रिंग फ़ील्ड है और कुछ भी हो सकता है। वास्तविक स्थान फ़िक्स से निपटने पर यह अक्सर 'स्थान प्रबंधक' में मौजूद स्थिरांकों में से एक के बराबर होगा जैसे कि ['GPS_PROVIDER'] (https://developer.android.com/reference/android/location/LocationManager.html#GPS_PROVIDER) जो 'जीपीएस" के बराबर है, जिसका अर्थ यह होगा कि विशिष्ट स्थान जीपीएस के माध्यम से हासिल किया गया था। –

3
Location object = new Location("service Provider"); 

यह प्रकार स्थान का एक उद्देश्य होता है कि पैदा करेगा प्रारंभिक मान प्राप्त करने के लिए स्थान '0' पर प्रारंभिक अक्षांश और देशांतर

double lat = object.getLatitude(); 
double lng = object.getLongitude(); 
1

आप एक विधि लिख सकते हैं :

Location createNewLocation(double longitude, double latitude) { 
    Location location = new Location("dummyprovider"); 
    location.setLongitude(longitude); 
    location.setLatitude(latitude); 
    return location; 
} 

और फिर यह कहते हैं:

Location myLoc = createNewLocation(dLong, dLati); 

या आप Double.parse() के साथ स्ट्रिंग का उपयोग कर सकते हैं:

Location myLoc = createNewLocation(Double.parse("s.Long"), Double.parse("s.Lati")); 
संबंधित मुद्दे