|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
一共两个楼层:
交通图、卫星图的实现
什么是地图图层
地图可以包含一个或多个图层,每个图层在每个级别都是由若干个图块组成的,它们覆盖了地图的整个表面。例如您所看到包括街道、兴趣点、学校、公园等内容的地图展现就是一个图层,另外交通流量的展现也是通过图层来实现的。
图层分类
1、底图
基本的地图图层,包括若干个缩放级别,显示基本的地图信息,包括道路、街道、学校、公园等内容。
2、实时交通信息图: MapView.setTraffic(true)
3、卫星图: MapView.setSatellite(true)
卫星地图是卫星拍摄的真实的地理面貌,所以卫星地图可用来检测地面的信息,你可以了解到地理位置,地形等。
布置一个MainActivity来装这些加强篇,即各个图形实现效果;
实现目的:MainActivity用一个ListView,文本方式采用自制的item样式,然后通过intent跳转到LayerDemo这个activity中,这个activity主要还是需要实现KEY的校验、底图的实现,另外增加的是交通图和卫星图,只要通过MapView.xxx调用即可。
实现效果:
当键盘点击1、2、3数字时,分别出现底图、交通图和卫星图。
MainActivity.Java- package huaxa.it.map;
- import android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.AdapterView.OnItemClickListener;
- import android.widget.ArrayAdapter;
- import android.widget.ListView;
- public class MainActivity extends Activity
- {
- private static String[] objects = new String[]
- { "hello world", "图层", "几何图形元素",
- "展示文字", "多条目绘制", "矩形范围内搜索", "圆形区域", "全城搜索", "驾车路线", "步行路线", "公交换乘",
- "我的位置" };
- private static Class[] clazzs = new Class[]
- { HelloWorld.class,
- LayerDemo.class};
- private ListView list;
- private ArrayAdapter<String> adapter;
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- list = (ListView) findViewById(R.id.list);
- adapter = new ArrayAdapter<String>(getApplicationContext(),
- R.layout.item, objects);// Context context, int resource, int
- // textViewResourceId, List<T> objects)<--objects代表listView
- list.setAdapter(adapter);
- list.setOnItemClickListener(new OnItemClickListener()
- {
- @Override
- public void onItemClick(AdapterView<?> parent, View view,
- int position, long id)
- {
- Intent intent = new Intent(getApplicationContext(),
- clazzs[position]);
- startActivity(intent);
- }
- });
- }
- }
复制代码
LayerDemo.java
item.xml - <TextView xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/text"
- android:layout_width="match_parent"
- android:layout_height="50dip"
- android:textColor="@android:color/black"
- android:textSize="20sp"
- android:gravity="center_vertical"
- />
复制代码
activity_main.xml - <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- tools:context=".MainActivity" >
- <ListView
- android:id="@+id/list"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content" />
- </RelativeLayout>
复制代码
Manifest.xml - <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="huaxa.it.map"
- android:versionCode="1"
- android:versionName="1.0" >
- <uses-sdk
- android:minSdkVersion="16"
- android:targetSdkVersion="16" />
- <!-- gps -->
- <!-- 这个权限用于进行网络定位 -->
- <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" >
- </uses-permission>
- <!-- 这个权限用于访问GPS定位 -->
- <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" >
- </uses-permission>
- <!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 -->
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >
- </uses-permission>
- <!-- 获取运营商信息,用于支持提供运营商信息相关的接口 -->
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
- </uses-permission>
- <!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位 -->
- <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" >
- </uses-permission>
- <!-- 用于读取手机当前的状态 -->
- <uses-permission android:name="android.permission.READ_PHONE_STATE" >
- </uses-permission>
- <!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据 -->
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" >
- </uses-permission>
- <!-- 访问网络,网络定位需要上网 -->
- <uses-permission android:name="android.permission.INTERNET" />
- <!-- SD卡读取权限,用户写入离线定位数据 -->
- <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" >
- </uses-permission>
- <application
- android:allowBackup="true"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <activity
- android:name=".MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- <activity
- android:name=".HelloWorld"
- android:label="@string/app_name" >
- </activity>
- <activity
- android:name=".LayerDemo"
- android:label="@string/app_name" >
- </activity>
- </application>
- </manifest>
复制代码
|
| |