2014-06-18 2 views
0

MainActivity에서 새로운 데이터를 수신하여 ViewPager 내부의 조각에 전달하려는 문제가 발생합니다. 내가 지금 생각할 수있는 유일한 해결책은 새로운 데이터로 새로운 ViewPager Adapter를 만드는 것입니다. 같은 : ViewPager에서 프래그먼트로 데이터 전달 및 업데이트

adapter = new ViewPagerAdapter(getFragmentManager(), MainActivity.this, bundle); 

그리고 내 ViewPager 어댑터에

, 난 더 조각으로이 번들을 통과 할 것 :

@Override 
public Fragment getItem(int arg0) { 
    // TODO Auto-generated method stub 

    switch(arg0){ 
    case 0: 
     NewBooksFrag newBookFrag = new NewBooksFrag(); 
     newBookFrag.setArguments(b); 
     return newBookFrag; 

이 방법의 단점은 내가 새 어댑터마다 새로운 데이터를 생성해야한다는 것입니다 들어오는 곳이 더 좋습니다. 거기에 더 좋은 방법이 있는지 궁금합니다.

here

하지만 문제를 참조하십시오 나는

getitemposition(Object object) 

를 호출하는

adapter.notifydatasetchange() 

에 대해 읽은 후, 나는 개체를 업데이트하는 인터페이스를 구현할 수 있습니다 이 방법은 내가 어떻게 f에 데이터를 전달할지 모르겠다. 분열을 업데이트하고 싶습니다.

미리 감사드립니다.

답변

0

전달 방법을 모르는 경우 조각이 데이터를 가져 오도록하십시오. fragment에서는 update() 함수를 작성하여 어딘가에서 데이터를 가져옵니다 (예 : getData()가 클래스를 구성). 업데이트 함수가 호출 될 때

adapter.notifydatasetchange(); 

당신은 오버라이드 (override)하면된다

getitemposition(Object object) 

이 데이터는 업데이트되어야하며, 그것은 또한이 데이터를 사용해야하는 조각을 해결하기 위해 필드를 포함해야한다 (예, 각 조각에 ID를 할당 할 수 있습니다).

관련 문제