android百度地图缩放
① 安卓手机怎么设置百度地图api缩放比例
设置缩放的方法
mBaiMap.setMapStatus(MapStatusUpdateFactory.newMapStatus(new MapStatus.Builder().zoom(15).build()));
//设置缩放级别
或者是
float zoomLevel = Float.parseFloat(t.getText().toString());
MapStatusUpdate u = MapStatusUpdateFactory.zoomTo(zoomLevel);
mBaiMap.animateMapStatus(u);
以上是网络的示例程序BaiMapsApiDemo(在网络LBS开放平台-》android SDK有下载)中,MapControlDemo.java中的一段,用来设置地图缩放比例的
② 百度地图android sdk怎么实现根据地图点的信息进行不同程度的缩放
参差荇菜,左右流之.窈窕淑女,寤寐求之.
③ android 百度地图上缩放的按钮怎么放
// 隐藏缩放控件
int childCount = mMapView.getChildCount();
View zoom = null;
for (int i = 0; i < childCount; i++) {
View child = mMapView.getChildAt(i);
if (child instanceof ZoomControls) {
zoom = child;
break;
}
}
zoom.setVisibility(View.GONE);
// 隐藏比例尺控件
int count = mMapView.getChildCount();
View scale = null;
for (int i = 0; i < count; i++) {
View child = mMapView.getChildAt(i);
if (child instanceof ZoomControls) {
scale = child;
break;
}
}
scale.setVisibility(View.GONE);
// 隐藏指南针
mUiSettings = mBaiMap.getUiSettings();
mUiSettings.setCompassEnabled(true);
// 删除网络地图logo
mMapView.removeViewAt(1);
④ 百度地图android开发能不能让地图一开始显示的就是最小的缩放状态
这里的缩放效果,实现了点击按钮可以对地图的放大缩小,通过手势放大与缩小也控制缩放图标的可用状态。具体实现如下:<㖞�"http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+/+PHByZSBjbGFzcz0="brush:java;">
zoom_selector_out.xml
layout中的zoom_controls_in_out.xml布局文件:
主配置文件main_activity.xml
相关的xml文件都在这里了,下面是具体实现代码:
自定义缩放控件类ZoomControlsView.java
package com.example.map.view;
import com..mapapi.map.BaiMap;
import com..mapapi.map.MapStatus;
import com..mapapi.map.MapStatusUpdateFactory;
import com..mapapi.map.MapView;
import com.example.map.activity.R;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.Button;
import android.widget.LinearLayout;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;;
public class ZoomControlsView extends LinearLayout implements OnClickListener{
private Button inBtn;//放大按钮
private Button outBtn;//缩小按钮
private BaiMap Map;//网络地图对象控制器
private MapStatus mapStatus;//网络地图状态
private float minZoomLevel;//地图最小级别
private float maxZoomLevel;//地图最大级别
public ZoomControlsView(Context context, AttributeSet attrs) {
super(context, attrs, 0);
init();
}
public ZoomControlsView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
/**
* 初始化
*/
private void init(){
//获取布局视图
LinearLayout view=(LinearLayout) LayoutInflater.from(getContext()).inflate(R.layout.zoom_controls_in_out, null);
//获取放大按钮
inBtn=(Button) view.findViewById(R.id.btn_zoom_in);
//获取缩小按钮
outBtn=(Button) view.findViewById(R.id.btn_zoom_out);
//设置点击事件
inBtn.setOnClickListener(this);
outBtn.setOnClickListener(this);
//添加View
addView(view);
}
@Override
public void onClick(View v) {
this.mapStatus=this.Map.getMapStatus();//获取地图状态
switch (v.getId()) {
case R.id.btn_zoom_in:
//改变地图状态
this.Map.setMapStatus(MapStatusUpdateFactory.zoomTo(mapStatus.zoom+1));
controlZoomShow();//改变缩放按钮
break;
case R.id.btn_zoom_out:
//改变地图状态
this.Map.setMapStatus(MapStatusUpdateFactory.zoomTo(mapStatus.zoom-1));
controlZoomShow();//改变缩放按钮
break;
default:
break;
}
//重新获取状态
mapStatus=this.Map.getMapStatus();
}
/**
* 设置Map视图
* @param mapView
*/
public void setMapView(MapView mapView){
//获取网络地图控制器
this.Map=mapView.getMap();
//设置地图手势事件
this.Map.setOnMapStatusChangeListener(onMapStatusChangeListener);
//获取网络地图最大最小级别
maxZoomLevel=Map.getMaxZoomLevel();
minZoomLevel=Map.getMinZoomLevel();
controlZoomShow();//改变缩放按钮
}
/**
* 控制缩放图标显示
*/
private void controlZoomShow(){
//获取当前地图状态
float zoom=this.Map.getMapStatus().zoom;
//如果当前状态大于等于地图的最大状态,则放大按钮则失效
if(zoom>=maxZoomLevel){
inBtn.setBackgroundResource(R.drawable.zoomin_press);
inBtn.setEnabled(false);
}else{
inBtn.setBackgroundResource(R.drawable.zoom_selector_in);
inBtn.setEnabled(true);
}
//如果当前状态小于等于地图的最小状态,则缩小按钮失效
if(zoom<=minZoomLevel){
outBtn.setBackgroundResource(R.drawable.zoomout_press);
outBtn.setEnabled(false);
}else{
outBtn.setBackgroundResource(R.drawable.zoom_selector_out);
outBtn.setEnabled(true);
}
}
/**
* 地图状态改变相关接口实现
*/
BaiMap.OnMapStatusChangeListener onMapStatusChangeListener=new BaiMap.OnMapStatusChangeListener() {
/**
* 手势操作地图,设置地图状态等操作导致地图状态开始改变。
* @param status 地图状态改变开始时的地图状态
*/
@Override
public void onMapStatusChangeStart(MapStatus arg0) {
}
/**
* 地图状态变化结束
* @param status 地图状态改变结束时的地图状态
*/
@Override
public void onMapStatusChangeFinish(MapStatus arg0) {
}
/**
* 地图状态变化中
* @param status 当前地图状态
*/
@Override
public void onMapStatusChange(MapStatus arg0) {
controlZoomShow();
}
};
}
⑤ 最新的百度地图Android开发包中,如何隐藏右下角的放大缩小控件
// 隐藏缩放控件
int childCount = mMapView.getChildCount();
View zoom = null;
for (int i = 0; i < childCount; i++) {
View child = mMapView.getChildAt(i);
if (child instanceof ZoomControls) {
zoom = child;
break;
}
}
zoom.setVisibility(View.GONE);
// 隐藏比例尺控件
int count = mMapView.getChildCount();
View scale = null;
for (int i = 0; i < count; i++) {
View child = mMapView.getChildAt(i);
if (child instanceof ZoomControls) {
scale = child;
break;
}
}
scale.setVisibility(View.GONE);
// 隐藏指南针
mUiSettings = mBaiMap.getUiSettings();
mUiSettings.setCompassEnabled(true);
// 删除网络地图logo
mMapView.removeViewAt(1);
⑥ android 百度地图怎么禁止缩小放大
拇指和食指并拢 点中要放大的区域,然后手指往两边扩张,就放大了
⑦ 百度地图js版Android开发,如何实现两个手指放大缩小地图
网络地图js版,在Androids上面目前只能支持滑动,在IOS上支持滑动和双指缩放。
这不是网络地图的问题,而是Android设备上的浏览器,对多点触控的支持不够完善。
⑧ android百度地图缩小到一定程度就不显示了,是什么原因
本身程序限制,再缩小也不可能放个地球平面图给你,放到一定小,道路无法和列如其他标识等比缩小,这是有限制的。
⑨ 百度地图Android SDK 使用MapController.zoomToSpan()方法两次打开地图缩放率不同
我也碰到这个问题,不过每次在第二次调用的时候,就能显示正常,所以直接调用两次即可,目前没发现有任何影响!网络地图Android SDK 使用MapController.zoomToSpan()方法两次打开地图缩放率不同