简单的json解析,但我做不到,因为每当我想构建它时,它就会崩溃,我认为这是因为“findViewById”。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
showDrugs(null);
return inflater.inflate(R.layout.fragment_first, container, false);
}
private void showDrugs(String search) {
ListView lvDrugs = (ListView) getView().findViewById(R.id.lvDrugs);
MyRealm myRealm = new MyRealm(getActivity().getApplicationContext());
RealmResults<Drug> drugs = myRealm.getDrugs(search);
DrugListAdapter adapter = new DrugListAdapter(getActivity().getApplicationContext(), drugs);
lvDrugs.setAdapter(adapter);
}
最佳答案
在展开 View 之前,您无法调用 showDrugs()
,因为 getView()
为 null
。
最简单的方法是在onViewCreated()
中调用showDrugs()
,它在onCreateView()
之后调用,您可以在确保 getView()
不是 null
。
关于java - 在fragment中findViewById,如何在onCreateView之外获取 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40821971/