ボタンのクリックでフラグメントを切り替えるフラグメント アクティビティがあります。
私が切り替える2つのフラグメントは次のとおりです。
- Google マップ android v2 フラグメント
- テキスト ビューを持つ別のフラグメント
これは、フラグメントを切り替える方法です。
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();
}
}
}
これは私の Maps 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"/>
しかし、Map フラグメントに戻るたびに、アプリケーションがクラッシュします。このコードを正しくするにはどうすればよいですか?