zoukankan      html  css  js  c++  java
  • Android Google Maps 监听地图缩放

    接上篇。http://www.cnblogs.com/maomishen/p/3556297.html

    由于公司项目要求,需要对google map监听地图的缩放(zoom)来进行一些操作。

    但是在网上查了好多资料,突然发现在google提供的GoogleMap类中,没有神马类似的setOnZoomChangedListener之类的方法。

    这让我灰常的。。。不解啊。。。后来发现很多人是通过一个定时器循环来操作对比。

    伤心之余,突然想到,也许缩放并不是GoogleMap中的属性,而是Camera的属性!遂,经过验证,试验通过。下面上代码。

    注:此处代码接上篇。

    MainActivity.java

            GoogleMap map;
    	float mOldZoom;
    
            @SuppressLint("NewApi")
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		// Get a handle to the Map Fragment
    		map = ((MapFragment)                   getFragmentManager().findFragmentById(R.id.map))
    				.getMap();
    		map.setMyLocationEnabled(true);
    		map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(22.279,
    				113.566), 13));
    		CameraPosition cp = map.getCameraPosition();
    		mOldZoom = cp.zoom;
    		map.setOnCameraChangeListener(listener);
    	}    
    
            OnCameraChangeListener listener = new OnCameraChangeListener() {
    
    		@Override
    		public void onCameraChange(CameraPosition cp) {
    			if (mOldZoom != cp.zoom) {
    				Log.e("googleMap", cp.zoom+"");
    				mOldZoom = cp.zoom;
    			}
    		}
    	};
    

    至此,完成。希望可以给大家提供一些其他的解决思路。

    一只孤独的猫咪神!喵!
  • 相关阅读:
    Single Number 解答
    Minimum Size Subarray Sum 解答
    Valid Anagram 解答
    Count Primes 解答
    fullCalendar 日历显示每天数据调用方法实践
    jqGrid列的统计
    关于 asp.net Web Api 上传文件请求内容过大404错误记录
    My97DatePicker只显示月份
    js 宏微任务执行顺序
    git 等官网下载慢方法
  • 原文地址:https://www.cnblogs.com/maomishen/p/3566150.html
Copyright © 2011-2022 走看看