어떤 위치의 경위도 정보를 얻다
3843 단어 android
곡괭이 위치 선택기를 사용하면 수동으로 지도에서 위치를 선택할 수 있고 선택한 위치의 경위도 정보를 복사하여 위치를 선택한 후 프로그램 인터페이스 오른쪽 아래를 클릭할 수 있다.버튼 옆에 있는 복사 버튼만 있으면 됩니다.제3자 개발자의 경우 곡嘀위치 선택기를 직접 호출하여 사용자가 위치를 선택하도록 하고 완성된 후에 사용자가 선택한 경위도 정보를 제3자 앱에 되돌려줄 수 있다.
곡嘀 위치 선택기 앱의 메인 인터페이스는 오른쪽 그림에 표시된 정보는 모두 제3자 앱이 맞춤형으로 제작할 수 있는 정보이다. 어떻게 맞춤형으로 제작하는지는 다음에 소개할 것이다.
쿠쿠 위치 선택
먼저 이 프로그램을 어떻게 호출해서 위치를 선택하는지 봅시다: 1.제3자 App은 Intent(goodev.intent.action.PICK LOCATION)를 통해 쿠쿠 위치 선택기를 호출한 다음에 Intent에 추가 데이터(함수 intent.putExtra(key,value))를 설정하여 쿠쿠 위치 선택기의 인터페이스를 맞춤형으로 만든다.
요소를 사용자정의할 수 있는 KEY는 다음과 같습니다.
TITLE: 선택 인터페이스의 제목을 사용자화합니다
ENABLE_SEARCH: 위치 검색을 사용할지 여부입니다.false이면 검색 단추와 위치 입력 상자를 숨기고 기본값은true입니다
SEARCH_HINT: 검색 위치 입력 상자의 입력 프롬프트를 사용자 정의합니다
SEARCH_TEXT: 검색 버튼의 텍스트 내용을 사용자화합니다
OK_TEXT: 완성 버튼의 텍스트 내용을 사용자 정의합니다
LOCATION_TEXT: 사용자가 선택한 위치 앞의 위치 레이블을 표시하는 텍스트를 사용자 정의합니다
ZOOM_LEVEL: 사용자 정의 지도의 기본 확대 축소 단계 (int형 숫자 범위는 1-21)
HELP_TEXT: 사용자 정의 도움말 인터페이스의 텍스트 내용(사용자가 인터페이스 오른쪽 아래에 있는? 단추를 누르면 도움말 인터페이스를 열기)
LATITUDE: 기본적으로 선택한 위치의 위도 좌표 정보를 사용자 정의합니다. 이 값은 문자열이고 내용은 위도 수치*1000000입니다. 예를 들어 기본 위치를 (12.343123.21)로 설정하려면 이 문자열은 "12343000"입니다
LONGITUDE: 문자열이 위와 같은 기본 경도 정보를 사용자화합니다
사용자가 선택한 후 반환되는 컨텐트는 다음과 같은 3개입니다.
LATITUDE: 컨텐트는 위도 좌표값*1000000, int형입니다
LONGITUDE: 내용은 경도 좌표값*1000000, int형입니다
ADDRESS: 반환된 내용은 android입니다.location.Address 객체는 네트워크에 액세스할 수 없는 경우와 같이 위치를 가져올 수 없으면 NULL로 돌아갑니다
이 프로그램의 호출을 간소화하기 위해 GoodevLocation PickCn.jar 이 파일(또는 소스 코드: Utils.java)을 다운로드하고 다음 코드를 통해 호출하면 됩니다.
돕다.
1
2
3
4
5
6
Intent intent =
new
Intent(
"goodev.intent.action.PICK_LOCATION"
);
intent.putExtra(
"title"
,
"Pick a address!"
);
intent.putExtra(
"search"
,
true
);
intent.putExtra(
"latitude"
,
"12210000"
);
intent.putExtra(
"longitude"
,
"22210000"
);
Utils.pickLocationOrShowDownloadDialog(
this
,intent,
200
);
만약 사용자의 휴대전화에 아직 쿠쿠위치선택기가 설치되지 않았다면 설치가 필요하다는 대화상자가 뜨고 인터넷을 통해 다운로드하여 설치할 수도 있고 전자시장을 통해 설치할 수도 있다.다음 그림은 다음과 같습니다.
다운로드 대화 상자
사용자가 완료되면 다음과 같이 onActivityResult 함수에서 사용자가 선택한 결과를 처리해야 합니다.
돕다.
1
2
3
4
5
6
7
8
9
@Override
protected
void
onActivityResult(
int
requestCode,
int
resultCode, Intent data) {
super
.onActivityResult(requestCode, resultCode, data);
if
(requestCode ==
200
&& resultCode == Activity.RESULT_OK) {
Address address = data.getParcelableExtra(
"address"
);
// : null
int
latitudeE6 = data.getIntExtra(Utils.LATITUDE,
0
);
int
longitudeE6 = data.getIntExtra(Utils.LONGITUDE,
0
);
}
}
그림이 보이지 않으면 여기를 클릭하십시오:http://yunfeng.sinaapp.com/?p=332
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.