错误:无法从静态上下文中引用非静态方法“findViewById(int)”

我正在使用Android Studio(Beta),在'onCreateView()'中使用此java代码时,我收到一个错误。

ListView listView = (ListView) findViewById(R.id.someListView);

这是错误:

Non-static method 'findViewById(int)' cannot be referenced from a static context

如何解决此问题?


答案 1

假设您在活动内有一个静态片段内部类:您正在尝试调用该活动,而该活动在不包含父级引用的静态内部类中是无法调用的。findViewById()

在您需要在刚刚膨胀的根视图上调用它,例如onCreateView()

 ListView listView = (ListView) rootView.findViewById(R.id.someListView);

答案 2

onCreateView()不应该是一个静态方法(我假设你在活动类中定义它),所以你一定是做错了什么。


推荐