以前,我有一个类似的问题,app尝试访问时崩溃(或findByID),事实证明,我把textview放错了方法,现在我只有一个方法,而且我正在使用片段,方法onCreateView
和我的应用程序一直崩溃:
public class InfoFragment extends Fragment {
public InfoFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
TextView n = (TextView) getView().findViewById(R.id.nama);
n.setText("Some String");
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_info, container, false);
}
}
最初,我的线条看起来像这样:
TextView n = (TextView) findViewById(R.id.nama);
然而,编译器给我一个错误,说它无法找到方法findViewById
,所以一些研究显示我应该添加getView()
,我做了,错误消失了,但现在应用程序崩溃,任何想法?
答案 0 :(得分:2)
/solr/corename/update
您还没有查看该部分代码中的视图。首先充气并在之后使用。
答案 1 :(得分:1)
首先膨胀您的布局,然后您可以使用它来查找TextView:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_info, container, false);
TextView n = (TextView) rootView.findViewById(R.id.nama);
n.setText("Some String");
return rootView;
}