Android 错误:找不到符号方法findviewbyid

Android 错误:找不到符号方法findviewbyid,android,fragment,findviewbyid,Android,Fragment,Findviewbyid,我有一个应用程序,它的tabLayout包含2个带有listView的片段,我想用Json从URLConnection加载内容,但在Fragment.java文件中我发现了错误:无法解析方法“findViewByID(int)” 公共类Fragment1扩展了片段实现URLConnectionResponse{ @凌驾 创建时的公共void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); 食堂供应商canProv=新

我有一个应用程序,它的tabLayout包含2个带有listView的片段,我想用Json从URLConnection加载内容,但在Fragment.java文件中我发现了错误:无法解析方法“findViewByID(int)”

公共类Fragment1扩展了片段实现URLConnectionResponse{
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
食堂供应商canProv=新食堂供应商();
canProv.delegate=此;
canProv.getDistrics(getActivity().getApplicationContext());
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//为该碎片膨胀布局
返回充气机。充气(R.布局.活动\u食堂\u标签\u门萨,容器,假);
}
@凌驾
公共void processFinish(列表输出){
ListView食堂列表=(ListView)findViewById(R.id.mensalistView);
ArrayList canteenItemContent=新建ArrayList();
canteenItemContent=(ArrayList)输出;
CanteenListAdapter canteenAdapter=新的CanteenListAdapter(canteenItemContent,this);
食堂列表。设置适配器(食堂适配器);
}
} 

您必须创建一个全局变量

查看主要内容

之后在onCreateView中充气时,如下所示

mainContent = inflater.inflate(R.layout.activity_canteen_tab_mensa, container, false);
return mainContent;
最后,使用主内容的引用可以像这样查找视图ID

mainContent = inflater.inflate(R.layout.activity_canteen_tab_mensa, container, false);
return mainContent;
ListView食堂列表=(ListView)mainContent.findViewById(R.id.mensalistView)


您应该使用
View
类的
findViewById
。因此,您可以为
列表视图创建一个全局变量:

ListView canteenList;
然后在您的
onview中创建
初始化您的
食堂列表

    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        canteenList = view.findViewById(R.id.mensalistView);
    }
遵循这个答案

private ListView食堂列表=null;
私有视图=空;
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
视图=充气机。充气(R.layout.activity\u食堂\u选项卡\u门萨,容器,假);
canteenList=(ListView)view.findViewById(R.id.mensalistView);
返回视图;
}
@凌驾
公共void processFinish(列表输出){
ArrayList canteenItemContent=新建ArrayList();
canteenItemContent=(ArrayList)输出;
CanteenListAdapter canteenAdapter=新的CanteenListAdapter(canteenItemContent,view.getContext());
食堂列表。设置适配器(食堂适配器);
}
 private ListView canteenList=null;
  private View view = null;
 @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.activity_canteen_tab_mensa, container, false);
        canteenList = (ListView)view.findViewById(R.id.mensalistView);
        return view;
    }

    @Override
    public void processFinish(List<?> output) {

        ArrayList<Dish> canteenItemContent = new ArrayList<Dish>();
        canteenItemContent = (ArrayList<Dish>)output;

        CanteenListAdapter canteenAdapter = new CanteenListAdapter(canteenItemContent, view.getContext());
        canteenList.setAdapter(canteenAdapter);
    }