안드로이드 개발 질문/답변
(글 수 45,052)
제가 DB에 위도 경도를 변수를 텍스트로 해서 저장을 해 놓았습니다.
당연히 소수점 빼구요~~
listview를 통해서 클릭하면 DB에 저장되어 있는 그 좌표를 가지고
맵구현 클래스에 가서 그 값을 받아 이동하려 하는데요~~
바로가기 버튼을 누르면 위도, 경도의 값을 String 값으로 가지고
맵클래스로 가서 그걸 인트값으로 받아서 float x에 0.000001을 곲해서 소수점을 만들어 setCenter(getPoint(x,y)); 이렇게 지정을 했는데
계속 받아로 가네요~~ 제가 생각한 방법이 틀린건가요??
아님 제가 코딩을 이상하게 한걸까요??ㅠㅠ
제가 글로만 적어놔서 이해가 잘 안되시면 DB에 String값으로 저장된 좌표값을 어찌 맵에서 사용할 수있는지좀 알려주세요~~ㅠㅠ
부탁드립니다.
당연히 소수점 빼구요~~
listview를 통해서 클릭하면 DB에 저장되어 있는 그 좌표를 가지고
맵구현 클래스에 가서 그 값을 받아 이동하려 하는데요~~
바로가기 버튼을 누르면 위도, 경도의 값을 String 값으로 가지고
맵클래스로 가서 그걸 인트값으로 받아서 float x에 0.000001을 곲해서 소수점을 만들어 setCenter(getPoint(x,y)); 이렇게 지정을 했는데
계속 받아로 가네요~~ 제가 생각한 방법이 틀린건가요??
아님 제가 코딩을 이상하게 한걸까요??ㅠㅠ
제가 글로만 적어놔서 이해가 잘 안되시면 DB에 String값으로 저장된 좌표값을 어찌 맵에서 사용할 수있는지좀 알려주세요~~ㅠㅠ
부탁드립니다.
2010.09.27 16:26:20
디비에 스트링으로 저장한 좌표값이 인트형으로 변환이 가능하겠네여
location geopoint point 이용하면 될껄요
로케이션이 아마 플롯형태로 좌표가지고 있고
지오포인트가 인트형일꺼고
화면의 xy좌표를 포인트가 쓰고요
Integer.parseInt(string)으로 하시면 인ㅌ로 변환되구요
그 값을 geopoint.setLatitude(Integer.parseInt(string1))
geopoint.setLongitude(Integer.parseInt(string2))
하면 좌표로 변환되실꺼예요
그리고 해당좌표의 위치를 화면의 xy와 비교해서 화면내에 있으면 표시될껄요
2010.09.27 18:46:24
안드로이드 위치 정보에서 사용되는 클래스는 크게 두가지가 있습니다. 하나는 GeoPoint, 다른 하나는 Location.
GeoPoint는 위도와 경도를 정확한 값으로 입력받지 않고, 원래 위도, 경도 값에 10의 6제곱을 곱한 후 그 것을 int 타입으로 변환한 값을 사용합니다.
아마 파라미터에 보면 longitudeE6, latitudeE6로 되어있을 것입니다. 보통 (int)(37.123456*1E6) 와 같은 식으로 해서 만들어집니다.
Location은 위도와 경도를 정확한 값으로 입력받습니다. 그래서 double 타입을 사용하고 있습니다.
이것만 참고하셔도 바다로는 안 갈 겁니다.
자꾸 바다에 가있네요~~ㅠㅠ