R.layout.myFragment
으로 액세스되는 (미리 쓰여진) 조각이 있습니다. Fragment (미리 작성된 코드에서도)를 ViewPager 내부의 FragmentPagerAdapter에 전달해야하므로 getFragmentManager().findFragmentById(R.layout.myFragment)
으로 전달하려고했으나 R.id.something
형태로 예상 한대로 null을 반환했습니다.
Google지도 조각을 구현하는 것과 관련하여 여기에서 일부 답변을 찾았습니다. 단편을 R.layout.myFragment
형태로 사용하고 부모/컨테이너 조각이 없기 때문에 (내 생각에는) 내 문제에는 해당되지 않습니다. 내가 아는 한 비슷하게) FragmentTransaction을 사용합니다.
Fragment는 ViewPager의 FragmentPagerAdapter의 getItem() 오버라이드에 반환 될 것으로 예상됩니다. 조각을 가져 와서 돌려 주면 어떻게 되나요?어떻게이 조각을 반환 할 수 있습니까?
2
A
답변
0
두 가지 가능한 솔루션이 있습니다. 둘 다 필요한 모든 것을 찾기 위해 모든 조각을 반복합니다.
List<WeakReference<Fragment>> fragList = new ArrayList<WeakReference<Fragment>>();
@Override
public void onAttachFragment (Fragment fragment) {
fragList.add(new WeakReference(fragment));
}
public List<Fragment> getActiveFragments() {
ArrayList<Fragment> ret = new ArrayList<Fragment>();
for(WeakReference<Fragment> ref : fragList) {
Fragment f = ref.get();
if(f != null) {
if(f.isVisible()) {
ret.add(f);
}
}
}
return ret;
}
또 다른 해결책 as explained by Michael을 사용하는 것입니다 :
으로는 연결된 모든 조각의 목록을 작성하는 작업 클래스의 onAttachFragment 방법을 사용하고 나중에 반복 할 수 didi_X8에 의해 here 설명 라이브러리를 지원하고 getFragments 메소드를 활용하십시오.
public List<Fragment> getVisibleFragments() {
List<Fragment> allFragments = getSupportFragmentManager().getFragments();
if (allFragments == null || allFragments.isEmpty()) {
return Collections.emptyList();
}
List<Fragment> visibleFragments = new ArrayList<Fragment>();
for (Fragment fragment : allFragments) {
if (fragment.isVisible()) {
visibleFragments.add(fragment);
}
}
return visibleFragments;
}
관련 문제
- 1. 안드로이드 - 어떻게 onActivityResult() 이후 현재 조각을 반환 할 수 있습니까?
- 2. 어떻게이 함수를 반환하지 않고 숫자를 반환 할 수 있습니까?
- 3. 어떻게이 애니메이션을 할 수 있습니까?
- 4. 어떻게이 매크로를 해석 할 수 있습니까?
- 5. 어떻게이 권리를 인쇄 할 수 있습니까?
- 6. CUDA에서 어떻게이 기능을 개선 할 수 있습니까?
- 7. 어떻게이 gzip으로 반환 할 수 있습니다 CSS/JS
- 8. 어떻게이 선택을 피할 수 있습니까?
- 9. 대칭 코드 조각을 결합 할 수 있습니까?
- 10. onDestroy()에서 조각을 분리 할 수 있습니까?
- 11. 면도기는 html 조각을 플러시 할 수 있습니까?
- 12. 소켓을 통해지도 조각을 공유 할 수 있습니까?
- 13. 안드로이드 조각을 재사용 할 수 있습니까?
- 14. 어떻게이 코드를 더 최적화 할 수 있습니까?
- 15. 어떻게이 RewriteRule을 작동하게 할 수 있습니까?
- 16. 어떻게이 코드를 더 압축 할 수 있습니까?
- 17. 어떻게이 해시를 생성 할 수 있습니까?
- 18. 어떻게이 자식 명령을 결합 할 수 있습니까?
- 19. 어떻게이 뷰를이 ViewModel에 바인딩 할 수 있습니까?
- 20. TinyMCE : 어떻게이 이벤트를 감지 할 수 있습니까?
- 21. 어떻게이 자바 코드를 최적화 할 수 있습니까?
- 22. Mysql - 어떻게이 쿼리를 개선 할 수 있습니까?
- 23. 어떻게이 코드를 컴파일 할 수 있습니까?
- 24. 어떻게이 JavaScript 오류를 디버그 할 수 있습니까?
- 25. 어떻게이 두 함수를 리팩터링 할 수 있습니까?
- 26. 어떻게이 LinQ 쿼리를 최적화 할 수 있습니까?
- 27. 어떻게이 질의 응답을 빠르게 할 수 있습니까?
- 28. 어떻게이 스칼라 코드를 짧게 할 수 있습니까?
- 29. 어떻게이 쉬운 자바 프로그램을 할 수 있습니까?
- 30. 어떻게이 데이터베이스를 개선 할 수 있습니까?
코드는 어디에 있습니까? 피곤 했습니까? – Nambi
도움이된다면 답변을 수락하십시오. – SoroushA