android - Google Maps v2 Implementation into Existing Fragment -


i wondering if shed light on issue i'm facing.

i have app has main activity 4 buttons , fragment, whenever press button fragment changes, far good.

i stumped adding google maps v2 1 of fragments, *eg when press button 2 want load map within fragment present (fragment_place), cannot seem find way , every other question on here solutions don't seem work me.*

any appreciated, i'm not amazing programmer in first place android seems difficult myself.

i have adjusted manifest file have no idea how use existing fragment 'holder' map

main activity

package com.grim.fragments;  import android.os.bundle; import android.app.activity; import android.app.fragment; import android.app.fragmentmanager; import android.app.fragmenttransaction; import android.view.view;  public class mainactivity extends activity {  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);  }  public void selectfrag(view view) {     fragment fr = null;      if (view == findviewbyid(r.id.button1)) {         fr = new fragmentone();     } else if (view == findviewbyid(r.id.button2)) {         fr = new fragmentmap();     } else if (view == findviewbyid(r.id.button3)) {         fr = new fragmentthree();     } else if (view == findviewbyid(r.id.button4)) {         fr = new fragmentfour();     }      fragmentmanager fm = getfragmentmanager();     fragmenttransaction fragmenttransaction = fm.begintransaction();     fragmenttransaction.replace(r.id.fragment_place, fr);     fragmenttransaction.commit();  } 

}

activity main

<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:background="@drawable/pipboyscreenpsd_nobuttons"     android:orientation="vertical" > <linearlayout     android:layout_width="match_parent"     android:layout_height="wrap_content" >      <button         android:id="@+id/button1"         android:layout_width="wrap_content"         android:layout_height="33dp"         android:layout_weight="2.00"         android:background="@android:color/transparent"         android:onclick="selectfrag"         android:text="status"         android:textcolor="@android:color/holo_blue_bright"         android:layout_margintop="20dp" /> </linearlayout>  <fragment     android:id="@+id/fragment_place"     android:name="com.grim.fragments.fragmenthome"     android:layout_width="664dp"     android:layout_height="392dp"     android:layout_marginbottom="20dp"     android:layout_marginleft="150dp"     android:layout_marginright="90dp" />  <space     android:layout_width="match_parent"     android:layout_height="wrap_content" />  <relativelayout     android:id="@+id/relativelayout1"     android:layout_width="match_parent"     android:layout_height="wrap_content"     android:layout_weight="0.24" >      <imageview         android:id="@+id/button4"         android:layout_width="100dp"         android:layout_height="80dp"         android:layout_alignparenttop="true"         android:onclick="selectfrag"         android:layout_torightof="@+id/button3"         android:src="@drawable/pipboybutton_unpressed" />      <imageview         android:id="@+id/button3"         android:layout_width="100dp"         android:layout_height="80dp"         android:layout_alignparenttop="true"         android:layout_centerhorizontal="true"         android:onclick="selectfrag"         android:src="@drawable/pipboybutton_unpressed" />      <imageview         android:id="@+id/button2"         android:layout_width="100dp"         android:layout_height="80dp"         android:layout_alignparenttop="true"         android:layout_marginleft="18dp"         android:layout_toleftof="@+id/button3"         android:onclick="selectfrag"         android:src="@drawable/pipboybutton_unpressed" />  </relativelayout> 

and example lets want button 2 map button

package com.grim.fragments; import android.app.fragment; import android.os.bundle; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup;  public class fragmenttwo extends fragment {  @override public view oncreateview(layoutinflater inflater, viewgroup container,         bundle savedinstancestate) {     // todo auto-generated method stub     return inflater.inflate(r.layout.fragment_two, container, false); }   }   <?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android"     android:id="@+id/relativelayout1"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:orientation="vertical" >  </relativelayout> 

again appreciated driving me mad in don't know start, have semblance of idea of needs doing next.

edit - forgot add i've attempted

package com.grim.fragments;  import android.app.fragment; import android.os.bundle; import android.view.layoutinflater; import android.view.view; import android.view.viewgroup;  import com.google.android.gms.common.googleplayservicesnotavailableexception; import com.google.android.gms.maps.googlemap; import com.google.android.gms.maps.mapview; import com.google.android.gms.maps.mapsinitializer;  public class fragmentmap extends fragment {      private mapview mmapview;     private googlemap googlemap;      @override     public view oncreateview(layoutinflater inflater, viewgroup container,              bundle savedinstancestate) {         // inflat , return layout         view v = inflater.inflate(r.layout.mapview, container, false);         mmapview = (mapview) v.findviewbyid(r.id.mapview);         mmapview.oncreate(savedinstancestate);         mmapview.onresume();//needed map display           googlemap = mmapview.getmap();          //perform camera updates here          return v;     }      @override     public void onresume() {         super.onresume();         mmapview.onresume();     }      @override     public void onpause() {         super.onpause();         mmapview.onpause();     }      @override     public void ondestroy() {         super.ondestroy();         mmapview.ondestroy();     }      @override     public void onlowmemory() {         super.onlowmemory();         mmapview.onlowmemory();     } }    <?xml version="1.0" encoding="utf-8"?>  <fragment xmlns:android="http://schemas.android.com/apk/res/android" xmlns:map="http://schemas.android.com/apk/res-auto" android:id="@+id/mapview" android:name="com.google.android.gms.maps.mapfragment" android:layout_width="match_parent" android:layout_height="match_parent" map:camerazoom="12" map:maptype="normal" map:uizoomcontrols="false" map:uirotategestures="true" map:uiscrollgestures="true" map:uizoomgestures="true" map:uitiltgestures="false" />  03-24 22:23:22.330: e/androidruntime(31831): fatal exception: main 03-24 22:23:22.330: e/androidruntime(31831): java.lang.nullpointerexception 03-24 22:23:22.330: e/androidruntime(31831):    @ maps.e.bf.b(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ eio.ontransact(sourcefile:115) 03-24 22:23:22.330: e/androidruntime(31831):    @     android.os.binder.transact(binder.java:310) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.maps.internal.imapfragmentdelegate$a$a.onresume(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.maps.mapfragment$a.onresume(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.dynamic.a$6.b(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.dynamic.a.a(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.dynamic.a.onresume(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.google.android.gms.maps.mapfragment.onresume(unknown source) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.fragment.performresume(fragment.java:1738) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:919) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.fragmentmanagerimpl.movetostate(fragmentmanager.java:1057) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.backstackrecord.run(backstackrecord.java:682) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.fragmentmanagerimpl.execpendingactions(fragmentmanager.java:1435) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.fragmentmanagerimpl$1.run(fragmentmanager.java:441) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.os.handler.handlecallback(handler.java:725) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.os.handler.dispatchmessage(handler.java:92) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.os.looper.loop(looper.java:137) 03-24 22:23:22.330: e/androidruntime(31831):    @ android.app.activitythread.main(activitythread.java:5227) 03-24 22:23:22.330: e/androidruntime(31831):    @ java.lang.reflect.method.invokenative(native method) 03-24 22:23:22.330: e/androidruntime(31831):    @ java.lang.reflect.method.invoke(method.java:511) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:795) 03-24 22:23:22.330: e/androidruntime(31831):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:562) 03-24 22:23:22.330: e/androidruntime(31831):    @ dalvik.system.nativestart.main(native method) 

i figured out way map running within existing fragment

public class mapfragment extends fragment {  mapview map;  @override public view oncreateview(layoutinflater inflater, viewgroup container,          bundle savedinstancestate) {     // inflat , return layout     view v = inflater.inflate(r.layout.map_fragment, container, false);     map = (mapview) v.findviewbyid(r.id.mapview);     map.oncreate(savedinstancestate);      return v; }  @override public void onresume() {     super.onresume();     map.onresume(); }  @override public void onpause() {     super.onpause();     map.onpause(); }  @override public void ondestroy() {     super.ondestroy();     map.ondestroy(); }  @override public void onlowmemory() {     super.onlowmemory();     map.onlowmemory(); } } 

mapview.xml

<?xml version="1.0" encoding="utf-8"?> <com.google.android.gms.maps.mapview     xmlns:android="http://schemas.android.com/apk/res/android"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:id="@+id/mapview" /> 

Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -