0

Я попытался следовать учебному пособию по созданию swipeable ViewPager с вкладками ActionBar. Все компилирует нормально, но когда я пытаюсь начать свою деятельность, он выходит из строя с этой ошибкой:Пролистаемый ViewPager с вкладками ActionBar (ссылка на Null Object)

Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference 

Это мой адаптер:

public class TabsPagerAdapter extends FragmentPagerAdapter { 

public TabsPagerAdapter(FragmentManager fm) { 
    super(fm); 
} 

@Override 
public Fragment getItem(int index) { 

    switch (index) { 
    case 0: 
     return new WeekFragment(); 
    case 1: 
     return new MonthFragment(); 
    case 2: 
     return new YearFragment(); 
    } 

    return null; 
} 

@Override 
public int getCount() { 
    // get item count - equal to number of tabs 
    return 3; 
}} 

Часть моего MainActivity:

viewPager = (ViewPager) findViewById(R.id.pager); 
mAdapter = new TabsPagerAdapter(getSupportFragmentManager()); 
viewPager.setAdapter(mAdapter); 

Я знаю, что этот вопрос задан много раз назад, но ничего не работает. Я не знаю, почему это не работает! Пожалуйста, помогите мне. Я сейчас сижу здесь больше двух часов и до сих пор не нашел решения ...

+0

проверить, есть ли файл макета вашего mainactivity с viewpager с идентификатором «пейджер», это было бы моим догадкой – mrtn

+0

Да, конечно, это так. И в противном случае это тоже не скомпилировалось бы должным образом, я думаю. Но да, есть ViewPager, называемый «пейджер». Именно по этой причине мне нечего делать дальше. –

+0

Вы можете попробовать отладить и проверить, является ли viewPager равным null после viewPager = (ViewPager) findViewById (R.id.pager) ;. Я полагаю, что viewPager уже имеет значение null в этой точке. – mrtn

ответ

0

Хорошо, теперь я узнал, почему эта ошибка произошла. Я установил неверный contentView. Поэтому viewPager действительно был нулевым. Наименьшие проблемы создают проблемы.

В любом случае, спасибо за помощь, ребята!

Возможно, у кого-то такая же проблема.