마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 맵 관련 질문입니다.

0 추천

위도와 경도 값을 직접 입력을해서 해당 위치로 이동하는 프로젝트를 만들어 보고 있는데요.

실행은 되지만 값을 입력했을때 그에 해당하는 값으로 이동하는게 아니라 계속 값이 지정되 있는 것처럼 같은 위치만을 잡아 줍니다...

도움 좀 주시면 감사하겠습니다. ㅠ_ㅠ

 

public class MainActivity extends Activity  {
 
static final LatLng position = new LatLng(37.509509,126.898368);
private double lat;
private double lng;
private LatLng position1 = new LatLng(lat, lng);
EditText ed1, ed2;
Button bt1;
private GoogleMap map;
private Marker Marker;
private Marker Marker1;
 
@SuppressLint({"NewApi","NewApi"})
 
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
 
map = ((MapFragment)getFragmentManager().findFragmentById(R.id.map)).getMap(); 
Marker = map.addMarker(new MarkerOptions().position(position));
map.moveCamera(CameraUpdateFactory.newLatLngZoom(position,17));
Marker1 = map.addMarker(new MarkerOptions().position(position1));
 
bt1 = (Button)findViewById(R.id.button2);
bt1.setOnClickListener(new Button.OnClickListener() {
 
@Override
public void onClick(View v1) {
// TODO Auto-generated method stub
 
 
ed1 = (EditText)findViewById(R.id.EditText1);
ed2 = (EditText)findViewById(R.id.EditText2);
lat = Double.parseDouble(ed1.getText().toString());
lng = Double.parseDouble(ed2.getText().toString());
if( v1.getId() == R.id.button2 ) {
        map.moveCamera(CameraUpdateFactory.newLatLngZoom(position1,17));
}   
}
}
);
 
}
 
 
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void clickButton(View v) {
if( v.getId() == R.id.button1 ) {
       map.moveCamera(CameraUpdateFactory.newLatLngZoom(position,17));
   }   
}
 
}
 
비오는 거리 (160 포인트) 님이 2013년 8월 6일 질문

1개의 답변

0 추천

position과 position1 값을 한번 할당한 후 변화를 주지 않았으니

당연히 계속 같은 장소만 보여지겠죠;;

position을 갱신시킨 후 moveCamera가 호출되어야 합니다.

Gradler (109,780 포인트) 님이 2013년 8월 7일 답변
...