마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

원하는 프래그먼트 갱신하는법.

0 추천
메인 액티비티 위에

뷰페이저를 이용하여 3개의 프래그먼트를 사용합니다.

전체 뷰페이저 자체를 갱신하는 방법은 알겠는데, 두번째 프래그먼트만 갱신하고싶습니다.

첫번째 프래그먼트에는 캘린더뷰가 있고,

두번째에는 각 날짜가 담고있는 데이터를 볼 수 있습니다.

첫번째 캘린더에서 날짜를 클릭하면 두번째 프래그먼트로 넘어가게 되는데, 넘어가면서 프래그먼트를 갱신해서 두번째 프래그먼트에 클릭한 날짜 값을 받아서 그 날짜에 맞는 데이터를 뿌려주게 되어있습니다.

즉, 날짜를 클릭했을때 두번째 프래그먼트가 데이터를 읽고 갱신하면서 뿌려주는거죠.

근데 문제는 다시 첫번째 프래그먼트로 돌아갔을 때 갱신된다는 점입니다.

캘린더는 초기화시, 오늘날짜가 선택되게 되어있는데, 다른날짜를 선택해서 두번째프래그먼트에서 조회후 다시 돌아오면 첫번째 프래그먼트가 갱신되어져서 기존에 선택했던 날짜가 아닌 오늘날짜로 선택되어있습니다.

어떻게 첫번째 프래그먼트는 갱신하지 않고 두번째만 할 수 있을까요 ?

아니면 갱신하더라도 캘린더뷰가 오늘날짜가 아닌 이전에 선택되었던 날짜를 기억해서 가지고있을수도있나요 !?
익명사용자 님이 2017년 4월 20일 질문

2개의 답변

0 추천
안녕하세요.

플리킹 시 콜백함수가 있을겁니다.

거기에 해당 페이지의 프래그먼트를 리턴하게 되어 있을텐데요.

새로 생성하지 말고 프래그먼트 뷰가 이미 있다면 뷰를 바로 리턴하시고 없다면

생성해서 리턴으로 해보세요.
sero (1,000 포인트) 님이 2017년 4월 20일 답변
0 추천
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);
    if (isVisibleToUser) {
     필요한 부분
    } else {

    }
}
이 방법을 사용해보세요.
자기 프레그먼트에 들어오면 호출됩니다.
pjh0911@outlook.com으로 알려주세요.
익명사용자 님이 2017년 4월 22일 답변
...