当前位置: 移动技术网 > 移动技术>移动开发>Android > Android地图控件之多地图展示

Android地图控件之多地图展示

2019年07月24日  | 移动技术网移动技术  | 我要评论

一、简介 
地图控件自v2.3.5版本起,支持多实例,即开发者可以在一个页面中建立多个地图对象,并且针对这些对象分别操作且不会产生相互干扰。
 文件名:demo04multimapview.cs
 简介:介绍多mapview的使用
 详述:在一个界面内,同时建立四个texturemapview控件;
 二、示例
 1、运行截图
在x86模拟器中的运行效果如下:  

在上一节例子的基础上,只需要再增加下面的步骤即可。

2、添加demo05_multimap.axml文件 
在layout文件夹下添加该文件,将其改为下面的代码:

<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:map="http://schemas.android.com/apk/res-auto"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="vertical" >

 <linearlayout
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_marginbottom="5dp"
  android:layout_weight="1"
  android:orientation="horizontal" >

  <fragment
   android:id="@+id/map1"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_marginright="5dp"
   android:layout_weight="1"
   class="com.baidu.mapapi.map.texturemapfragment" />

  <fragment
   android:id="@+id/map2"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_weight="1"
   class="com.baidu.mapapi.map.texturemapfragment" />
 </linearlayout>

 <linearlayout
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_weight="1"
  android:orientation="horizontal" >

  <fragment
   android:id="@+id/map3"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_marginright="5dp"
   android:layout_weight="1"
   class="com.baidu.mapapi.map.texturemapfragment" />

  <fragment
   android:id="@+id/map4"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:layout_weight="1"
   class="com.baidu.mapapi.map.texturemapfragment" />
 </linearlayout>

</linearlayout> 

3、添加demo05multimapview.cs文件
在sdkdemos文件夹下添加该文件,然后将其内容改为下面的代码:

using android.app;
using android.content.pm;
using android.os;
using com.baidu.mapapi.map;
using com.baidu.mapapi.model;

namespace bdmapv371demos.srcsdkdemos
{
 /// <summary>
 /// 在一个activity中展示多个地图
 /// </summary>
 [activity(label = "@string/demo_name_multimap",
  configurationchanges = configchanges.orientation | configchanges.keyboardhidden,
  screenorientation = screenorientation.sensor)]
 public class demo05mutimapview : activity
 {
  private readonly latlng geo_beijing = new latlng(39.945, 116.404);
  private readonly latlng geo_shanghai = new latlng(31.227, 121.481);
  private readonly latlng geo_guangzhou = new latlng(23.155, 113.264);
  private readonly latlng geo_shenzhen = new latlng(22.560, 114.064);

  protected override void oncreate(bundle savedinstancestate)
  {
   base.oncreate(savedinstancestate);
   setcontentview(resource.layout.demo05_multimap);
   initmap();
  }

  /// <summary>
  /// 初始化map
  /// </summary>
  private void initmap()
  {
   mapstatusupdate u1 = mapstatusupdatefactory.newlatlng(geo_beijing);
   texturemapfragment map1 = fragmentmanager.findfragmentbyid<texturemapfragment>(resource.id.map1);
   map1.baidumap.setmapstatus(u1);

   mapstatusupdate u2 = mapstatusupdatefactory.newlatlng(geo_shanghai);
   texturemapfragment map2 = fragmentmanager.findfragmentbyid<texturemapfragment>(resource.id.map2);
   map2.baidumap.setmapstatus(u2);

   mapstatusupdate u3 = mapstatusupdatefactory.newlatlng(geo_guangzhou);
   texturemapfragment map3 = fragmentmanager.findfragmentbyid<texturemapfragment>(resource.id.map3);
   map3.baidumap.setmapstatus(u3);

   mapstatusupdate u4 = mapstatusupdatefactory.newlatlng(geo_shenzhen);
   texturemapfragment map4 = fragmentmanager.findfragmentbyid<texturemapfragment>(resource.id.map4);
   map4.baidumap.setmapstatus(u4);
  }
 }
} 

4、修改mainactivity.cs文件
在mainactivity.cs文件的demos字段定义中添加下面的代码。   

  //示例5--多地图展示
   new demoinfo<activity>(resource.string.demo_title_multimap,
    resource.string.demo_desc_multimap,
    new demo05mutimapview()), 

运行观察结果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网