簡體   English   中英

使用viewpager.setCurrentItem(position)傳遞一些數據

[英]Pass some data with viewpager.setCurrentItem(position)

我希望在按鈕點擊內傳遞一些值,同時更改viewpager選項卡片段。 我有兩個問題。

  1. 傳遞數據的最佳方法是什么?
  2. 如果我使用靜態數據會有什么問題? 如:

     public static string abc="" case R.id.IVActionMore: ViewPager viewPager = (ViewPager) getActivity().findViewById(R.id.tabs_viewpager); viewPager.setCurrentItem(3); //abc = "action"; break; 
  1. 使用addOnPageChangeListener

void addOnPageChangeListener(ViewPager.OnPageChangeListener listener)添加一個偵聽器,只要頁面發生更改或逐步滾動,就會調用該偵聽器。

怎么樣 ?

 viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
    @Override
    public void onPageScrolled(int position, float 
                     positionOffset, int positionOffsetPixels) {

    }

    @Override
    public void onPageSelected(int position) 
    {

     if(position == 3)
     {
           // DO your work
     }

    }

    @Override
    public void onPageScrollStateChanged(int state) {

    }
});

的OnClick

 buttonOBJ.setOnClickListener(new OnClickListener()
   {
             @Override
             public void onClick(View v)
             {
                viewPager.setCurrentItem(viewPager.getCurrentItem() + 1, true);
             } 
   }); 

您可以使用shared-preference設置和獲取數據。 使用靜態不是一個好主意。 檢查鏈接

https://stackoverflow.com/a/23024962/4549220

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM