2016-01-03 26 views
1

我创建了一个新项目(Tabbed Activity)。Android:ViewPager节号返回无效值

这是onCreateView

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 

     View rootView = inflater.inflate(R.layout.fragment_main, container, false); 
     TextView textView = (TextView) rootView.findViewById(R.id.section_label); 
     textView.setText(getString(R.string.section_format,getArguments().getInt(ARG_SECTION_NUMBER))); 


     return rootView; 
    } 

默认代码但后来我做了一些修改代码:

 . 
     . 
     textView.setText(getString(R.string.section_format,getArguments().getInt(ARG_SECTION_NUMBER))); 
     Toast.makeText(getContext(), getString(R.string.section_format,getArguments().getInt(ARG_SECTION_NUMBER)), Toast.LENGTH_SHORT).show(); 
     return rootView; 
     . 
     . 

但吐司值是TextView的显示的内容不同。所以问题是,我怎样才能得到节号的准确(准确)值?

编辑1:当活动第一次开始时,吐司显示两次。

编辑2:添加了屏幕截图。

enter image description here

+0

什么是您的Viewpager适配器的基类?它是“PagerAdapter/FragmentPagerAdapter/FragmentStatePagerAdapter”吗?另外,代替'Toast',你可以尝试使用'Log.d'语句。 – Droidwala

+0

不知道我的基类是什么。可以是SectionsPagerAdapter扩展FragmentPagerAdapter。 –

+0

我删除了我以前的评论,因为我写的方式是不正确的。ViewPager的默认行为是“保持”页面两侧的一页被查看,并摧毁其余的默认情况下..属性是决定和可以通过方法['setOffscreenPageLimit'](http://developer.android.com/reference/android/support/v4/view/ViewPager.html#setOffscreenPageLimit%28int%29)改变..你可以将viewpager设置为通过将其设置为'viewpager.setOffscreenPageLimit(0);' – Droidwala

回答

0

据我所知,从TextView的文本可能会改变得更快。而敬酒将继续展示,直到时间到了。大约需要大约5秒的时间才能改变面包。所以,你可能认为这个部分是不一样的。

我的建议是使用两个TextViews进行测试。

希望这有助于:)

+0

当设置为TextView时值正确,但我需要使用节号进行进一步处理。 –