나는 jfeinstein의 SlidingMenu을 사용하고 있습니다. 현재 특정 단편이 사용자에게 표시되는지 확인하려고합니다. 먼저 시도 :안드로이드 조각 파편을 비교하는 방법?
if(mainfrag.isVisible()){
Log.d("Frag","Main is visible");
}else{
Log.d("Frag","Main is NOT visible");
}
항상 조각을 볼 수 없었던 것을 출력했습니다. 나는 다음 시도 :
이android.support.v4.app.FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
Log.d("Frag","CurFrag: "+fragmentManager.findFragmentById(R.id.content_frame).toString());
MainFragment mf = new MainFragment();
if(fragmentManager.findFragmentById(R.id.content_frame) == mf){
Log.d("Frag","This is Main");
}else{
Log.d("Frag","This is NOT Main :(");
}
이
findFragmentById
나에게 현재의 단편을 말할 것이라는 점을 알고있다 그러나 나는 내가 할 수있는 그래서 논리적으로 비교하는 방법을 모른다 사물이 보이는 경우에만.
umm! 메소드가 있습니다. \t \t public void setUserVisibleHint (boolean isVisibleToUser) {}' –
모든 조각이 다른 클래스 인 경우 간단한 'instanceof' 확인을 수행 할 수 있습니다. 또는 모든 조각에 고유 한 태그를 제공하십시오 (각'FragmentTransaction'을 제공하는 것을 잊지 마십시오). –