2012-01-02 8 views
7

나는 화면에 제목 조각과 내용 조각을 가지고 있습니다. 사용자가 제목 조각에서 항목을 클릭하면 해당 조각이 만들어져 프레임에 삽입되고 선택한 제목이 제목 조각에서 강조 표시됩니다.안드로이드 조각보기 상태를 복원하는 방법

fragment.addToBackStack()으로 트랜잭션이 수행되므로 사용자가 BACK 키를 클릭하면 이전 조각이 복원되어 프레임에 삽입됩니다.

트랜잭션 관리자가 조각을 복원 할 때보기 상태를 복원하는 가장 좋은 해결책은 무엇입니까?

문제는 제목 조각에서 이전 조각 이름을 강조 표시해야하며 그 조각이 무엇인지 알아야한다는 것입니다. 내 자신의 스택에 뷰 상태를 저장하여 해결했습니다 : 조각이 만들어지고 트랜잭션 관리자 리스너를 사용하여 트랜잭션 백 스택을 변경하면 복원됩니다.

하지만 올바른 해결책이 아닌 것 같습니다.

답변

1

답변을 받기 전에 다음에 코드를 추가하십시오. 기회가 내 답변은 당신의 코드를 정말로 모르므로 가능한 한 많이 도움이되지 않을 것입니다.

이것은 오래되었지만 어쨌든 귀하의 질문 (및 앱 아키텍처)을 올바르게 이해하면 인터페이싱의 경우처럼 들릴 수 있습니다.

콘텐츠 단편 부재로서,이 인터페이스를 추가 :

public class ContentFragment extends Fragment{ 

    public interface onFragmentTitleHighlighted{ 
     public void highLightTitle(String title); 
    } 
} 

및 표제 단편을 구현하도록. 콘텐츠 단편에 fragmnet이라는 제목을 지정하고 콘텐츠 단편의 onCreateView (...) 호출에서 highLightTitle(String title);에 대한 호출을 추가하십시오. 이 방법은 새로운 콘텐츠 fragmnet가 추가 될 때마다 제목이 강조 표시됩니다.

관련 문제