当前位置:文档之家› Android自定义地图示例

Android自定义地图示例

Android自定义地图示例
Android自定义地图示例

1Android自定义地图示例

再来一个简单一些的自定义地图类型示例:QQ地图,QQ地图URL规则比较简单。1-17级都是有一层组成,选用GENERIC_MAPTYPE_5作为QQ地图类型,直接在CustomMap修改代码如下:

Java代码:

package demo;

2

3import com.mapdigit.gis.raster.ICustomMapType;

4import com.mapdigit.gis.raster.MapType;

5import com.mapdigit.gis.geometry.GeoLatLng;

6import com.pstreets.gisengine.R;

7import com.pstreets.gisengine.SharedMapInstance;

8import Android.app.Activity;

9import android.os.Bundle;

10import android.view.Menu;

11import android.view.MenuInflater;

12import android.view.MenuItem;

13

14public class CustomMap extends Activity {

15

16@Override

17public void onCreate(Bundle savedInstanceState) {

18super.onCreate(savedInstanceState);

19setContentView(https://www.doczj.com/doc/6711100228.html,yout.main);

20}

21

22@Override

23public void onStart() {

24super.onStart();

25MapType.setCustomMapTileUrl(new TiandiMapType());

26GeoLatLng center = new GeoLatLng(32.0616667, 118.7777778);

27SharedMapInstance.map.setCenter(center, 13, MapType.GENERIC_MAPTYPE_5);

28

29}

30

31@Override

32public boolean onCreateOptionsMenu(Menu menu) {

33MenuInflater inflater = getMenuInflater();

34inflater.inflate(R.menu.mapzoom_menu, menu);

35return true;

36}

37

38@Override

39public boolean onOptionsItemSelected(MenuItem item) {

40// Handle item selection

41switch (item.getItemId()) {

42case R.id.zoomin:

43SharedMapInstance.map.zoomIn();

44

45return true;

46case R.id.zoomout:

47SharedMapInstance.map.zoomOut();

48return true;

49

50default:

51return super.onOptionsItemSelected(item);

52}

53

54}

55

56}

57

58class TiandiMapType implements ICustomMapType {

59

60private static int serverIndex=1;

61

62public String getTileURL(int mtype, int x, int y, int zoomLevel) { 63String returnURL="";

64serverIndex+=1;

65serverIndex%=3;

66int maxTiles=(int)Math.pow(2, zoomLevel);

67switch(mtype){

68case MapType.GENERIC_MAPTYPE_5:

69returnURL= "http://p"

70+ serverIndex+"https://www.doczj.com/doc/6711100228.html,/maptiles/" ;

71y=maxTiles-y-1;

72returnURL+=+zoomLevel

73+"/"+(int)(x/16)+"/"+(int)(y/16)+"/"+x+"_"+y+".gif";

74break;

75case MapType.GENERIC_MAPTYPE_6:

76

77if(zoomLevel<11){

78returnURL= "http://tile"

79+ serverIndex+"https://www.doczj.com/doc/6711100228.html,/DataServer?T=A0512_EMap";

80returnURL+="&X="+x+"&Y="+y+"&L="+zoomLevel;

81

82}else if(zoomLevel<13){

83returnURL= "http://tile"

84+ serverIndex+"https://www.doczj.com/doc/6711100228.html,/DataServer?T=B0627_EMap1112"; 85returnURL+="&X="+x+"&Y="+y+"&L="+zoomLevel;

86}else{

87returnURL= "http://tile"

88+ serverIndex+"https://www.doczj.com/doc/6711100228.html,/DataServer?T=siwei0608";

89returnURL+="&X="+x+"&Y="+y+"&L="+zoomLevel;

90}

91

92break;

93case MapType.GENERIC_MAPTYPE_7:

94if(zoomLevel<11){

95returnURL= "http://tile"

96+ serverIndex+"https://www.doczj.com/doc/6711100228.html,/DataServer?T=AB0512_Anno";

97returnURL+="&X="+x+"&Y="+y+"&L="+zoomLevel;

98}else{

99returnURL=MapType.EMPTY_TILE_URL;

100}

101

102break;

103

104}

105return returnURL; 106}

107

108}

android 自定义圆角头像以及使用declare-styleable进行配置属性解析

android 自定义圆角头像以及使用declare-styleable进行配置属性解析由于最新项目中正在检查UI是否与效果图匹配,结果关于联系人模块给的默认图片是四角稍带弧度的圆角,而我们截取的图片是正方形的,现在要给应用统一替换。应用中既用到大圆角头像(即整个头像是圆的)又用到四角稍带弧度的圆角头像,封装一下以便重用。以下直接见代码 [java] view plain copy 在CODE上查看代码片派生到我的代码片 package com.test.demo; import com.test.demo.R; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.BitmapShader; import android.graphics.Canvas; import android.graphics.Matrix; import android.graphics.Paint; import android.graphics.RectF; import android.graphics.Shader.TileMode; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.os.Parcelable; import android.util.AttributeSet; import android.util.Log; import android.util.TypedValue; import android.widget.ImageView; /** * 圆角imageview */ public class RoundImageView extends ImageView { private static final String TAG = "RoundImageView"; /** * 图片的类型,圆形or圆角 */ private int type; public static final int TYPE_CIRCLE = 0; public static final int TYPE_ROUND = 1; /** * 圆角大小的默认值

Android平台我的日记设计文档

Android平台我的日记 设计文档 项目名称:mydiray 项目结构示意: 阶段任务名称(一)布局的设计 开始时间: 结束时间: 设计者: 梁凌旭 一、本次任务完成的功能 1、各控件的显示 二、最终功能及效果 三、涉及知识点介绍 四、代码设计 activity_main.xml:

android:layout_centerHorizontal="true" android:layout_marginTop="88dp" android:text="@string/wo" android:textSize="35sp"/>

相关文档 最新文档