2015-12-09 173 views
0

我有一个recyclerview里面viewpager里面的片段。我有viewpager之外的按钮。点击按钮后如何更新recyclerview。Android:如何更新里面的viewpager里面的片段里面的recyclerview点击按钮

public class Level2MainActivity_grid1 extends AppCompatActivity { 

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.level2mainlayout_place1); 



     // I am putting a viewpager with fragments into them and put tabs 

     ViewPager viewPager = (ViewPager) findViewById(R.id.viewPager); 
     PagerAdapter pagerAdapter = new PagerAdapter(getSupportFragmentManager(), Titles, Numboftabs); 
     viewPager.setAdapter(pagerAdapter); 
     TabLayout tabLayout = (TabLayout) findViewById(R.id.tabLayout); 
     tabLayout.setupWithViewPager(viewPager); 



     Button buttonId = (Button) findViewById(R.id.planmytraveludupitown); 
     buttonId.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

      //I want to save some things and do the changes in the recyclerview of tab 0; 

      } 
     }); 
    } 
} 

在viewpager,在我使用recyclerview的标签0 framgment代码如下:

public class Udupiwhattosee extends Fragment { 

    private RecyclerView rv; 
    private List<Udupiwhattoseearray> udupiwhattoseearray; 


    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
     RecyclerView v =(RecyclerView) inflater.inflate(R.layout.tab_1,container,false); 
     v.setLayoutManager(new LinearLayoutManager(getActivity())); 
     v.setHasFixedSize(true); 
     initializeData(); 
     WhattoseeRVAdapter adapter = new WhattoseeRVAdapter(udupiwhattoseearray,container.getContext()); 
     v.setAdapter(adapter); 
     return v; 
    } 


    private void initializeData(){ 
     udupiwhattoseearray = new ArrayList<>(); 
     udupiwhattoseearray.add(new Udupiwhattoseearray("Udupi Sri Krishna Temple", "Udupi, Karanata,INDIA", R.drawable.udupi)); 
     udupiwhattoseearray.add(new Udupiwhattoseearray("Udupi place 2", "Udupi, Karanata,INDIA", R.drawable.udup_krishna_math_gopura_udupi)); 
     udupiwhattoseearray.add(new Udupiwhattoseearray("Udupi Place 3", "Udupi, Karanata,INDIA", R.drawable.udupi_rath)); 
     udupiwhattoseearray.add(new Udupiwhattoseearray("Udupi place 4", "Udupi, Karanata,INDIA", R.drawable.udupi_window)); 
    } 
+0

你可以使用一个标志,比如'isRecyclerViewNeedUpdated'来表示你的'RecyclerView'是否需要更新。单击按钮时,将此标志设置为true。使用'ViewPage#addOnPageChangeListener(...)',这样当你的目标'Fragment'被选中时,检查标志并在需要时更新'RecyclerView'。 –

回答

0
recycler_view.post(new Runnable() { 
        public void run() { 
         adapter.notifyDataSetChanged(); 
        } 
       }); 

HERE你会看到界面的工作,试试这个希望其要正常工作

相关问题