访问视图时出现片段错误

时间:2016-10-01 12:09:22

标签: android

我正在尝试使用标签和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)

出了什么问题?

2 个答案:

答案 0 :(得分:0)

getView() 返回null

要解决此问题,您应该运行所有依赖于onCreateView中视图的代码。这样,您将始终引用用于查找其他视图的视图。

有关片段生命周期的更多信息,请参阅Android Developers page

答案 1 :(得分: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;
}