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

다시 정리하여 질문 올려보겠습니다. Fragment 재사용때 UI갱신(?)

0 추천

ViewPager + Fragment 조합입니다.

 

첫 실행에서는 아무 문제 없이 잘 작동합니다.

그런데 onDetach() 까지 진행되고 라이프사이클이 끝난 후 다시 재실행 됐을때

이후부터는 TextView에 변경된 내용이 입력되지 않습니다.

 

아래의 내용처럼 onCreateView 에서 필요한 뷰페이지를 초기화 시켜놓고요

public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    layout = (ConstraintLayout) inflater.inflate(R.layout.first_fragment, container, false);
    Name = layout.findViewById(R.id.first_name);
    return layout;
}

 

핸들러를 통해 처리된 결과 값을 가져와서 아래 소스 코드를 작동 시킵니다.

 

private void user_layout(HashMap user) {
   Name.setText(String.valueOf(user.get("name")));
}

아무런 반응이 없습니다.

아래 다른 질문들은 다 빼놓고 이부분만 놓고 왜 작동이 안되는지 궁금하네요.

재실행 된 상황에서 별로도 만들어 놓은 클릭버튼을 누르면 Name.setText 에 텍스트가 출력이 되긴 합니다.

그런데 왜 메소드를 통해 호출한 출력은 안되는걸까요??

 

출력이 안될때도 user.get 안에는 데이터가 담겨 있는상황입니다.

익명사용자 님이 2018년 4월 29일 질문
2018년 4월 29일 reopened
어제 오늘;; 바보짓했네요 ㄷㄷ
다른 메소드에서도 호출되서 사용되고 하면서
해당 TextView를 static 빼놓고 사용한게 문제였네요;;;

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...