2013-12-11 5 views
0

조각이 하나 있어야합니다. 조각과지도가 포함되어 있습니다. 사용자가지도를 클릭 할 때 핀의 세부 정보를 표시합니다. 사용자가 세부 조각에서 뒤로 단추를 클릭하면 뒤로 단추를 재정의합니다. 다시지도를 표시합니다. 조각이 두 번째로로드 될 때지도 개체를 복원하는 방법

fragmentManager.beginTransaction().replace(R.id.content_frame, mapfragment).commit(); 

나는이지도를 같이하고있는 중이 야

답변

1

확인 this 밖으로 .. reloading.I도 addToBackStack과 노력하지만 luck.Can 어떤 사람이 그것을 해결하는 방법을 제시하지 않습니다. 조각의 상태를 저장해야합니다. 다음 코드

+0

감사합니다. 나는 그것을 검사 할 것이다 – koti

+0

도움이되는지 아닌지 알려 주시기 바랍니다. – user1728071

1

사용 :

getSupportFragmentManager().beginTransaction() 
          .add(detailFragment, "detail") 
          // Add this transaction to the back stack 
          .addToBackStack() 
          .commit(); 

당신이 onBackPressed에 쓴 것을 제거합니다.

알려주세요.

0

SupportMapFragment이 생성되면 setRetainInstance() 메서드를 호출하십시오.

public class MapActivity extends AppCompatActivity implements OnMapReadyCallback { 

private GoogleMap map; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.map); 
    FragmentManager fm = getSupportFragmentManager(); 
    SupportMapFragment smf = (SupportMapFragment) fm.findFragmentById(R.id.map); 
    smf.setRetainInstance(true); 
    smf.getMapAsync(this); 
} 

@Override 
public void onMapReady(GoogleMap googleMap) { 
    this.map = googleMap; 
    // put some markers 
} 

} 

자세한 내용은 here을 참조하십시오.