0

parentActivity와 하위 조각 사이의 통신에 문제가 있습니다.내장 된 단편에서보기 호출기를 사용하여 상위 활동의 ​​스피너를 변경 하시겠습니까?

나는 행동 바를 사용하고 있습니다.

나는 주변을 둘러 보았지만 아직 ViewPagers와 Spinner를 다루는 것을 찾지 못했습니다.

배경 :

내 아이의 조각은 다른 조각에서 사용할 수없는 추가 작업 항목의 몇 가지를 지정하는 자신의 작업 표시 줄이 이러한 작업 항목 중 하나가 여러 옵션이있는 회입니다 가지고 - A, B 및 C etc

기본적으로 MainActivity는 ViewPager가 포함 된 Fragment_A (하위 조각)를로드합니다.

이보기 호출기

Fragment_A도 스피너 어댑터가 (스피너 옵션 A, B, C 등이있다) 뷰 A와 B 사이의 와이프를 처리한다. 스피너에서 A를 선택하면 viewPager가 A로 전환되고, 스피너에서 B를 선택하면 viewPager가 B로 전환됩니다.

내 질문은 : 사용자가 A와 B 사이를 "스 와이프"(스피너를 사용하지 않음)하고 "스피너"를 A 또는 B라고 각각 말하면 어떻게 캡처합니까?

참고 : 내 페이징 어댑터 (ViewPager 용)는 다른 클래스에서 별도로 만들어집니다.

도움이 감사드립니다 ... 모두에게 감사드립니다!

답변

2

This이 필요합니다. Fragmentinterface을 설정하고 상위 활동에 interface을 구현해야합니다. Fragmentinterface의 인스턴스를 인스턴스화하고 페이지 변경 내용을 수신하는 데 사용하는 방법에 상관없이 해당 데이터를 활동에 전달하는 메소드를 호출하십시오.

다소 "손을 흔드는 것"으로 보이지만 약간 지워줬으면합니다.

+0

분명히 살펴보기로 하겠지만 명확하게하기 위해 PagerAdapter와 그 조각에서 사용되는 조각 사이에서 작동합니까? 내 조각은 회 전자 값을 변경하거나 회 전자가 선택된 세트를 변경합니다. 따라서 주 활동과의 의사 소통은 실제로 일어나지 않습니다. – ryvianstyron

+0

나는 https://code.google.com/p/android/issues/detail?id=27526 을 처리했으며 onPageSelectedListener를 만들었지 만 호출되지는 않았습니다. onPageSelectedListener를 시작하는 것이 내 문제의 해결책으로 더 적절할 것이라고 생각합니다. 내가 그것을 작동시키지 못한다면, 당신이 제시 한 개념들에 대해 아프다. :) – ryvianstyron

+1

'Fragment' 자체는 모듈화되어 있어야하며, 부모 활동이있는 한 스스로 실행할 수 있어야한다. 'Fragment'에'interface '를 쓸 때 그것은 액티비티가'interface'를 구현하는 한 당신이 부모'Activity'에 데이터를 보낼 수있는 다리의 일종입니다. 'PagerAdapter'가'Fragment'의 일부라면 당신은'Activity' 부모에게 데이터를 전송할 수 있어야합니다. – Wenger

관련 문제