2013-04-24 129 views
0

在viewpager的片段中;我有一個OnCheckedChangeListener複選框。onCheckedChanged viewpager片段問題

片段的當前索引位置正確顯示在頁面中。但是當我點擊複選框(onCheckedChanged):

  • 這表明未來的位置編號

如何使用onCheckedChanged與當前位置?

public class PageFragment extends Fragment { 

    private static int currentQuestionNumber; 
    private static CheckBox review; 
     public static PageFragment newInstance(int index) { 

      PageFragment pageFragment = new PageFragment(); 
      Bundle bundle = new Bundle(); 
      bundle.putInt("index", index); 
      pageFragment.setArguments(bundle); 
      return pageFragment; 
     } 


    @Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    PageFragment.currentQuestionNumber = getArguments().getInt("index"); 
    review = (CheckBox) view.findViewById(R.id.Review); 

    PageFragment.review.setOnCheckedChangeListener(new OnCheckedChangeListener() { 

      @Override 
      public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { 

    Toast.makeText(getActivity(), PageFragment.currentQuestionNumber // shows next index number 
+"-" +isChecked, Toast.LENGTH_SHORT).show();      

      } 

     });   
    } 
    } 
+0

PageFragment Fragment在您的viewpager中處於哪個位置。當您點擊它顯示的位置時。 – 2013-04-24 05:17:31

+0

它是自動更新內容;當切換頁面時,只需要一個片段;但onCheckedChanged顯示下一頁位置 – metemet06 2013-04-24 05:25:27

+0

,但我已測試過您的代碼,它始終顯示零。可以將您的代碼發佈到視圖添加片段的位置 – 2013-04-24 05:51:18

回答

1

您的索引引用下一頁,因爲viewpager會在顯示當前項目時預載下一個片段。嘗試使用yourViewPager.getCurrentItem()獲取顯示位置的索引。

+0

謝謝,我從PageFragment newInstance獲取了位置。現在我用getCurrentItem()來設置值並工作。 – metemet06 2013-04-24 07:10:18