package com.amapv2.cn.apis; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.CheckBox; import android.widget.Spinner; import com.amap.api.maps.AMap; import com.amap.api.maps.SupportMapFragment; import com.amapv2.cn.apis.util.AMapUtil; import com.example.lokal.R; /** * AMapV2地图中简单介绍适量地图和卫星地图模式切换 */ public class LayersDemoActivity extends FragmentActivity implements OnItemSelectedListener { private AMap aMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layers_demo); init(); } /** * 初始化AMap对象 */ private void init() { if (aMap == null) { aMap = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map)).getMap(); } Spinner spinner = (Spinner) findViewById(R.id.layers_spinner); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource( this, R.array.layers_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener(this); } /** * 对选择是否显示交通状况事件的响应 */ public void onTrafficToggled(View view) { if (AMapUtil.checkReady(this, aMap)) { aMap.setTrafficEnabled(((CheckBox) view).isChecked()); } } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { if (AMapUtil.checkReady(this, aMap)) { setLayer((String) parent.getItemAtPosition(position)); } } /** * 选择矢量地图和卫星地图事件的响应 */ private void setLayer(String layerName) { if (layerName.equals(getString(R.string.normal))) { aMap.setMapType(AMap.MAP_TYPE_NORMAL); } else if (layerName.equals(getString(R.string.satellite))) { aMap.setMapType(AMap.MAP_TYPE_SATELLITE); } } @Override public void onNothingSelected(AdapterView<?> parent) { } }