ActionBar标题不变

时间:2013-06-05 18:28:55

标签: android android-viewpager title

我在片段活动中实现了viewpager。该片段活动包含两个滑动片段。要在操作栏中设置片段的标题,我已在片段活动中完成此操作。

    mViewPager.setOnPageChangeListener(new OnPageChangeListener() 
    {
        public void onPageSelected(int position) 
        {

        //**this is line68 where error is occuring**       
       getActionBar().setTitle(mAppSectionsPagerAdapter.getPageTitle(position).toString());

                        }

但是,我不太确定如何设置两个片段的标题。在碎片中我已经完成了这个。

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

        View view = inflater.inflate(R.layout.patient_list, container, false);
        getActivity().setTitle("All Patients");

我得到了Nullpointerexception ......

06-05 23:54:26.269: E/AndroidRuntime(6430): FATAL EXCEPTION: main
06-05 23:54:26.269: E/AndroidRuntime(6430): java.lang.NullPointerException
06-05 23:54:26.269: E/AndroidRuntime(6430):     at com.example.actionbar.MainActivity$1.onPageSelected(MainActivity.java:68)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.support.v4.view.ViewPager.scrollToItem(ViewPager.java:538)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.support.v4.view.ViewPager.setCurrentItemInternal(ViewPager.java:523)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.support.v4.view.ViewPager.onTouchEvent(ViewPager.java:1943)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.view.View.dispatchTouchEvent(View.java:7340)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2181)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1914)
06-05 23:54:26.269: E/AndroidRuntime(6430):     at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2187)

请帮忙。

2 个答案:

答案 0 :(得分:1)

我猜您的mAppSectionsPagerAdapter.getPageTitle(position)会返回null,因此请检查您是否覆盖了viewpager getPageTitle上的方法PagerAdapter

答案 1 :(得分:0)

第68行有超过1个可能的空值。您应该调试代码并评估该行中的每个语句以检查null(设置断点并使用inspect选项检查null)。

备选方案是将行分成多行并再次运行代码以检查错误行号。