2016-10-01 2 views
0

Я пытаюсь использовать вкладки и PagerAdapter, чтобы создать макет вкладки.Ошибка фрагмента доступа к представлению

У меня есть следующее выражение в моем Fragment:

cpPrecTextView = (BootstrapLabel) getView().findViewById(R.id.cpPrec); 
cpPrecTextView.setText(cpPrecTextView.getText() + cpPrec); 

Моего приложение падает со следующей ошибкой:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference 
         at com.pgoiv.pokemongoiv.TabFragment1.onCreateView(TabFragment1.java:45) 

Что случилось?

+0

сообщает, что 'getView()' null –

ответ

0

Ваш getView() возвращает null. Я предполагаю, что вы не надули контейнер правильно для Fragment. Поэтому внутри вашего onCreateView вам нужно сначала раздуть вид, как это.

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

    // Inflate the layout and get the reference of the view 
    View v = inflater.inflate(R.layout.fragment_my_tickets, container, false); 

    // Now find any view inside that 
    cpPrecTextView = (BootstrapLabel) v.findViewById(R.id.cpPrec); 
    cpPrecTextView.setText(cpPrecTextView.getText() + cpPrec); 

    return v; 
} 
0

getView()возвращает нулевое значение

Чтобы решить эту проблему, вы должны запустить весь код, который зависит от точки зрения в onCreateView. Таким образом, вы всегда будете иметь ссылку на представление, которое будет использоваться для поиска других видов.

Для получения дополнительной информации о жизненных циклах фрагментов вы можете обратиться к Android Developers page!

Смежные вопросы