`
chengfengyang
  • 浏览: 21500 次
社区版块
存档分类
最新评论

mars老师的googleMap示例(二)

阅读更多
manifest.xml文件
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="test.map03"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="8" />
<uses-permission android:name="android.permission.INTERNET" />
    <application android:icon="@drawable/icon" android:label="@string/app_name">
     <uses-library android:name="com.google.android.maps" />
        <activity android:name=".TestMap03Activity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>


2、布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
 <com.google.android.maps.MapView
                 android:id="@+id/mapViewId"
                 android:layout_width="fill_parent"
                 android:layout_height="fill_parent"
                 android:enabled="true"
                 android:clickable="true"
                 android:apiKey="0C7R0KjQ5CR8hdVNpQlvJaRtn8wuek7GhYyY9Ng"
                 />
</LinearLayout>

3、FirstOverlay.java
import java.util.ArrayList;

import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.graphics.drawable.Drawable;

import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.OverlayItem;

public class FirstOverlay extends ItemizedOverlay<OverlayItem>{
     private Context context;
     private ArrayList<OverlayItem> overlayItems = new ArrayList<OverlayItem>();
	public FirstOverlay(Drawable defaultMarker,Context context)
	{
		super(boundCenterBottom(defaultMarker));
		this.context = context;
	}
	public FirstOverlay(Drawable defaultMarker) {
		super(boundCenterBottom(defaultMarker));
		// TODO Auto-generated constructor stub
	}
	//用于将生成好的OverlayItem对象添加到List当中
	public void addOverlayItem(OverlayItem overlayItem)
	{
		overlayItems.add(overlayItem);
		populate();
	}
//用于创建一个OverlayItem对象
	@Override
	protected OverlayItem createItem(int i) {
		// TODO Auto-generated method stub
		return overlayItems.get(i);
	}
//返回当前Overlay当中所包含的OverlayItem对象的数量 
	@Override
	public int size() {
		// TODO Auto-generated method stub
		return overlayItems.size();
	}
	@Override
	protected boolean onTap(int index) {
		// TODO Auto-generated method stub
		OverlayItem item = overlayItems.get(index);
		AlertDialog.Builder builder = new AlertDialog.Builder(context);
		builder.setTitle(item.getTitle());
		builder.setMessage(item.getSnippet());
		Dialog dialog = builder.create();
		dialog.show();
		return true;
	}
	
}

4、MainActivity.java
import java.util.List;

import android.graphics.drawable.Drawable;
import android.os.Bundle;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.OverlayItem;

public class TestMap03Activity extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        MapView mapView = (MapView)findViewById(R.id.mapViewId);
        mapView.setBuiltInZoomControls(true);
        
        //调用mapView对象的getOverLays()方法,用于得到所有的图层对象
        List<Overlay> mapOverlays = mapView.getOverlays();
        //生成Drawable对象
        Drawable drawable = getResources().getDrawable(R.drawable.icon);
        FirstOverlay firstOverlay = new FirstOverlay(drawable,this);
        //创建一个GeoPoint对象,用于通过经纬度,指定地图上的一个点
        GeoPoint point = new GeoPoint(19240000,-99120000);
        //创建一个OverLayItem对象
        OverlayItem overlayItem = new OverlayItem(point,"Hola,Mundo!","I'm in Mexico City!");
        firstOverlay.addOverlayItem(overlayItem);
        mapOverlays.add(firstOverlay);
    }

	@Override
	protected boolean isRouteDisplayed() {
		// TODO Auto-generated method stub
		return false;
	}
}


执行结果
[img][/img]
分享到:
评论

相关推荐

    Mars老师Android视频第二季PPT和源码

    本资源集合是"Mars老师Android视频第二季"的教学辅助资料,包含PPT讲义和实战源码,旨在帮助学习者深入理解并掌握Android开发的各项核心技术。Mars老师,作为业界知名的Android讲师,以其丰富的教学经验和深入浅出的...

    Android Mars XLog Demo示例.zip

    在`MyXLogTest2`这个示例项目中,我们可以看到如何在实际应用中集成并使用Mars XLog。首先,需要在项目中添加Mars XLog的依赖,通常通过Gradle来引入: ```groovy dependencies { implementation '...

    Mars老师安卓开发教程源码

    "Mars代码"这个压缩包包含了Mars老师教程中的所有示例源码。这些源码是学习过程中重要的参考材料,可以直观地看到每个功能的实现细节。通过阅读和运行这些代码,你可以更好地理解Android编程的实践操作,提升自己的...

    mars老师android视频第一季到第五季源码及视频合集

    《mars老师android视频第一季到第五季源码及视频合集》是一份全面且深入的Android开发学习资源,由知名讲师mars老师倾力打造。这个合集包含了从基础到高级的Android开发教学视频以及配套的源码,是Android开发者提升...

    Mars老师视频源代码 第一季 第二季

    《Mars老师视频源代码 第一季 第二季》是一个针对Android开发的视频教程资源,包含两个部分:第一季和第二季的源代码。这个压缩包旨在帮助学习者深入理解Android应用程序开发,通过实际的代码示例来提升技能。下面...

    mars老师视频源码

    【标题】"mars老师视频源码"所涉及的知识点主要围绕着编程教学、软件开发以及可能涵盖的编程语言和技术栈。Mars老师作为一位知名的IT教育专家,他的视频源码通常会包含一系列与编程相关的实践项目,旨在帮助学生或...

    mars老师视频源码下载(33集全)

    【标题】"mars老师视频源码下载(33集全)"所涵盖的知识点主要集中在Android开发领域,由知名讲师mars提供。这个资源是针对初学者的,旨在帮助他们理解和学习Android应用程序开发的基础和进阶技巧。源码是学习过程中...

    Mars老师android视频教程第一,二,三季源码

    Mars老师的Android视频教程,涵盖了从初级到进阶的全方位学习路径,其第一、二、三季的源码无疑为开发者提供了宝贵的实践资源。对于想要深入理解Android开发,特别是跟随Mars老师步伐的初学者,这些源码是不容错过的...

    mars老师android教程源代码

    mars老师的android视频教程全五季的源码,看到很多人在找,并且很少有齐全的,我也花了很大的精力才找到,因此,拿出来分享,便于大家学习。在此,也再次感谢mars老师,正是他的无私奉献,才让我们的开发路上,有了...

    MARS 老师Android教学视频第一、二、三、四季视频的源码和ppt

    本文将深入探讨MARS老师在Android教学视频中涵盖的知识点,结合提供的源码和PPT,为Android开发者提供一个全面的学习框架。MARS老师的课程覆盖了Android开发的基础到进阶,旨在帮助学员从零基础快速成长为熟练的...

    Mars老师视频源代码

    《Mars老师视频源代码详解——深入Android编程实践》 Mars老师的视频源代码是一份宝贵的教育资源,专注于Android平台的开发。这份源代码是Mars老师在教学过程中使用的实例,旨在帮助学习者深入理解Android应用的...

    Mars老师的源代码 android教程源码

    【Android开发】Mars老师的源代码详解 在Android开发领域,学习并理解优秀的源代码是提升技能的关键步骤。"Mars老师的源代码 android教程源码"提供了丰富的学习材料,涵盖了从基础到进阶的Android开发知识。这些...

    mars老师android课程源代码(33集全)

    《Android编程之旅:Mars老师课程源代码解析》 在Android开发的学习过程中,拥有高质量的教程和源代码无疑是加速进步的关键。"Mars老师android课程源代码(33集全)"提供了一套完整的Android开发学习资源,包含了...

    Mars老师安卓教学视频全集

    Mars老师安卓教学视频全集,包括第1季、第2季、第3季、第4季、第5季、第1季重录版、第2季重录版

    mars老师第四季源码

    【标题解析】:“mars老师第四季源码”指的是由知名Android开发者mars发布的第四季系列教程的源代码。这个标题暗示了这是一个与Android编程相关的学习资源,由经验丰富的讲师提供,可能包含一系列的示例项目、代码...

    mars教程源码一二三四季

    在这一部分,我们将了解Mars的基本概念和安装流程,学习如何配置项目环境,导入Mars库,并编写简单的示例程序,体验Mars的基本功能。 2. 第二季:模型训练与部署 这一部分将深入探讨如何使用Mars进行模型训练,...

    mars老师视频全部代码(第一季到第四季)

    【标题】"mars老师视频全部代码(第一季到第四季)"所涵盖的知识点非常广泛,这是一套全面的Android开发教程,由知名的Mars老师亲自讲解,包含了他从第一季到第四季的所有课程代码。Mars老师在IT行业中以其深入浅出...

    Mars4_5.jar_Mars4_5_Mars_Mars4.5_mars4_5软件_mars4_

    MARS是一个专为教育目的设计的轻量级交互式开发环境,它为学生和教师提供了一个友好的界面来编写、编译、运行和调试MIPS汇编代码。 MIPS架构是一种精简指令集计算机(RISC)架构,广泛应用于计算机体系结构的教学中...

    mars老师Android视频源码(全五季),亲自调试过

    《Android开发深度探索:基于mars老师视频源码的解析》 在Android开发的学习过程中,实践经验是至关重要的。本文将深入探讨“mars老师Android视频源码”全五季的内容,这是一份宝贵的资源,由mars老师亲自调试并...

Global site tag (gtag.js) - Google Analytics