当我尝试设置MapType时,MapFragment使应用程序在运行时崩溃

吉林特

我在尝试在Android应用程序中更改GoogleMap的类型时遇到了麻烦。我有一个基本的操作栏菜单,当我在操作栏中选择正确的选项时,我希望将地图作为碎片放置在我的活动中。这是我的代码:

package com.example.where2go;

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends FragmentActivity {

    private MahMapFrag mapFragment;

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        try {

            initializeMap();

        } catch (Exception e) {e.printStackTrace();}

    }

    private boolean initializeMap() {
        if (mapFragment == null) {

            mapFragment = new MahMapFrag();
            // check if map is created successfully or not
            try{
                if (mapFragment == null) {
                    Toast.makeText(getApplicationContext(),
                            "Sorry! unable to create maps", Toast.LENGTH_SHORT)
                            .show();
                    return false;
                }
                else {
                    Log.d("MLOGS", "Map Intitialized");
                    return true;
                }
            } catch(Exception e) {
                e.printStackTrace();
            }
        }
        return false;
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         switch(item.getItemId()) {
            case R.id.action_map:
                getFragmentManager().beginTransaction().replace(android.R.id.content,mapFragment).commit();
                break;
            default:
                return false;
         }
         return true;
     }

}

这是我的类,它扩展了MapFragment:

package com.example.where2go;

import android.util.Log;

import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;

public class MahMapFrag extends MapFragment {

    public MahMapFrag() {
        Log.d("MLOGS", "CONSTRUCT");
        //this.getMap().setMapType(GoogleMap.MAP_TYPE_SATELLITE);
    }

}

当行

this.getMap().setMapType(GoogleMap.MAP_TYPE_SATELLITE);

被评论后,该应用程序(似乎)运行顺利。但是,当该行取消注释时,如果我尝试在构造函数中更改地图的类型,则当我单击操作栏时该应用程序崩溃,该调用

getFragmentManager().beginTransaction().replace(android.R.id.content,mapFragment).commit();

我在处有一个空指针异常com.where2go.MainActivity.onOptionItemSelected它已经尝试了几个小时才能弄清楚为什么在设置地图类型时我的mapFragment为null。

有人可以给我有关此问题的线索和/或解释吗?我真的很想了解,因为我感觉到我缺少对进一步的android开发至关重要的东西...。

我在安装了Google Play服务的情况下使用Eclipse Juno和Genymotion,并通过API 19进行了编译。

谢谢

岩石

android_Muncher

确保您使用的是我在mah Case中发现的帮助。(参考您的MahMapFrag大声笑)

fragmentManager = getSupportFragmentManager();

将此添加到您的xml

   <fragment
    android:id="@+id/location_map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" />

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当我尝试设置onClickListener时,应用程序崩溃

来自分类Dev

自动布局黄色警告。它会在运行时使我的应用程序崩溃吗

来自分类Dev

尝试制作按钮数组,但应用程序在运行时因空指针异常而崩溃

来自分类Dev

当我尝试打开 Fragment 时应用程序崩溃

来自分类Dev

当我尝试运行此页面时,应用程序崩溃

来自分类Dev

当我尝试运行此页面时,应用程序崩溃

来自分类Dev

每当我每次运行时尝试在应用程序中进行gmail登录集成时,都会显示相同的错误

来自分类Dev

每当我每次运行时尝试在应用程序中进行gmail登录集成时,都会显示相同的错误

来自分类Dev

Android Studio:代码已完成,但是每次我尝试运行时应用程序崩溃

来自分类Dev

更新到Android 3.6工作室后,在运行时应用程序崩溃

来自分类Dev

在Yesod应用程序中Recordwildcards在运行时崩溃

来自分类Dev

尝试在IO7.1(photo.framework)上运行时iOS应用程序崩溃

来自分类Dev

如果我的应用程序在Android Wear上运行,如何确定(在运行时)?

来自分类Dev

当我尝试通过自定义样式设置文本大小属性时,为什么应用程序崩溃

来自分类Dev

当我在模拟器上运行时,我的Android应用程序意外停止

来自分类Dev

当我的应用程序在后台运行时,为什么我的BroadcastReceiver无法注册?

来自分类Dev

在运行时为沙盒应用程序设置DYLD变量

来自分类Dev

在运行时提升Java应用程序

来自分类Dev

Apache Storm应用程序在运行时失败

来自分类Dev

在运行时更改应用程序MainForm

来自分类Dev

Web应用程序:在运行时删除文件

来自分类Dev

在运行时更改应用程序语言

来自分类Dev

在运行时更改应用程序MainForm

来自分类Dev

在运行时设计 Angular 应用程序的样式

来自分类Dev

为什么当我尝试显示我的 ip usig Inet 时我的应用程序崩溃?

来自分类Dev

当我尝试在运行时从psapi.dll(Windows)链接函数时,GetModuleFileNameExA将无法正常运行

来自分类Dev

为什么当我将图像设置为 ImageView 并在 android 7.1.1 上运行它时应用程序崩溃

来自分类Dev

安装后运行时,Android应用程序崩溃

来自分类Dev

运行时PFQuery和PFRelation崩溃应用程序

Related 相关文章

  1. 1

    当我尝试设置onClickListener时,应用程序崩溃

  2. 2

    自动布局黄色警告。它会在运行时使我的应用程序崩溃吗

  3. 3

    尝试制作按钮数组,但应用程序在运行时因空指针异常而崩溃

  4. 4

    当我尝试打开 Fragment 时应用程序崩溃

  5. 5

    当我尝试运行此页面时,应用程序崩溃

  6. 6

    当我尝试运行此页面时,应用程序崩溃

  7. 7

    每当我每次运行时尝试在应用程序中进行gmail登录集成时,都会显示相同的错误

  8. 8

    每当我每次运行时尝试在应用程序中进行gmail登录集成时,都会显示相同的错误

  9. 9

    Android Studio:代码已完成,但是每次我尝试运行时应用程序崩溃

  10. 10

    更新到Android 3.6工作室后,在运行时应用程序崩溃

  11. 11

    在Yesod应用程序中Recordwildcards在运行时崩溃

  12. 12

    尝试在IO7.1(photo.framework)上运行时iOS应用程序崩溃

  13. 13

    如果我的应用程序在Android Wear上运行,如何确定(在运行时)?

  14. 14

    当我尝试通过自定义样式设置文本大小属性时,为什么应用程序崩溃

  15. 15

    当我在模拟器上运行时,我的Android应用程序意外停止

  16. 16

    当我的应用程序在后台运行时,为什么我的BroadcastReceiver无法注册?

  17. 17

    在运行时为沙盒应用程序设置DYLD变量

  18. 18

    在运行时提升Java应用程序

  19. 19

    Apache Storm应用程序在运行时失败

  20. 20

    在运行时更改应用程序MainForm

  21. 21

    Web应用程序:在运行时删除文件

  22. 22

    在运行时更改应用程序语言

  23. 23

    在运行时更改应用程序MainForm

  24. 24

    在运行时设计 Angular 应用程序的样式

  25. 25

    为什么当我尝试显示我的 ip usig Inet 时我的应用程序崩溃?

  26. 26

    当我尝试在运行时从psapi.dll(Windows)链接函数时,GetModuleFileNameExA将无法正常运行

  27. 27

    为什么当我将图像设置为 ImageView 并在 android 7.1.1 上运行它时应用程序崩溃

  28. 28

    安装后运行时,Android应用程序崩溃

  29. 29

    运行时PFQuery和PFRelation崩溃应用程序

热门标签

归档