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

안드로이드 현재 Fragment 로 if 조건문을 주려고합니다.

0 추천
backkey 이벤트에서 현재 Activity에 뿌려진 fragment가 1번 프레그먼트면 앱이종료, 2번프레그먼트이면 popBackStack();으로 1번fragment로 돌아가게 끔 코드를 짜려고하고있습니다.

헌데 backkey 이벤트가 1번프레그먼트에 있는 상황에서 2번프레그먼트에 있을때 조건문을 못넣겠네요..ㅠ

조건문에 들어갈만한게 뭐가있을까요..

if( ?? ){
          ((MainActivity)MainActivity.mContext).fragmentManager.popBackStack();
             }
 else {
             doubleBackCloseHandler.onBackPressed(); //더블클릭 종료 핸들러
         }

 

"현재Activity가 2번 프레그먼트를 참조할 때", 를 조건문으로 사용할 수 있나요? 아니면 다른방법을 써야할까요..

ps. BaseFragement 를사용한 방법과

getSupportFragmentManager().getBackStackEntryAt(getSupportFragmentManager().getBackStackEntryCount() - 1).getName() 코드는 사용이 안되네요..
R0R0 (2,610 포인트) 님이 2016년 11월 23일 질문
R0R0님이 2016년 11월 23일 수정

1개의 답변

0 추천

/* 아래와 같이 BackStack에 쌓여있는 EntryCount 를 얻어서 처리하면 됩니다 */

 

FragmentManager flagmentManager = getSupportFragmentManager();

int fragmentStackCount = flagmentManager.getBackStackEntryCount();

if(fragmentStackCount > 0){

   fragmentManager.popBackStack();

   return;

}else{

   doubleBackCloseHandler.onBackPressed(); //더블클릭 종료 핸들러

}

     

 

빅배스 (4,260 포인트) 님이 2016년 11월 24일 답변
...