Ho un'attività frammento che commuta i frammenti sul clic del pulsante.
I due frammenti che ho Switch sono:Passaggio da frammento mappa a un altro Frammento e ritorno
- mappa di Google Android v2 frammento
- Un altro frammento con una vista di testo
Ecco come posso passare i frammenti:
public void onClick(View v) {
FragmentManager fm = getSupportFragmentManager();
if(tv.getText().toString().equalsIgnoreCase("Click ME!!")){
tv.setText("MAP");
if (fm != null) {
if(map == null){
map = new Map();
}
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.lay_contaier, map);
ft.commit();
}
}
else{
tv.setText("Click ME!!");
if (fm != null){
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.lay_contaier,new empty());
ft.commit();
}
}
}
Questo è il mio codice di Mappe di Fagment
public class Map extends Fragment implements OnMarkerClickListener, OnInfoWindowClickListener, OnMarkerDragListener {
private static final LatLng PERTH = new LatLng(-31.952854, 115.857342);
private static final LatLng SYDNEY = new LatLng(-33.87365, 151.20689);
private GoogleMap mMap;
private Marker mPerth;
private Marker mSydney;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.activity_main,null);
return view;
}
activity_mail.xml
<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
class="com.google.android.gms.maps.SupportMapFragment"/>
Ma ogni volta che swich di nuovo alla mappa frammentare l'applicazione si blocca. Come dovrei fare questo codice giusto?
Sostituiscono lo stesso layout R.id.lay_contaier –
@nagaraj - ho modificato il post ma è sempre lo stesso l'app si blocca ancora – zoram
nel codice che hai incollato, non c'è sbagliato. Devi mostrare altro codice per trovare l'errore – TNR