Java Android:如何在OnItemClickListener()中调用getActivity()?
我正在尝试在侦听器中调用getActivity():Java Android:如何在OnItemClickListener()中调用getActivity()?,java,android,casting,onitemclick,main-activity,Java,Android,Casting,Onitemclick,Main Activity,我正在尝试在侦听器中调用getActivity(): class ViewTest{ //called in a fragment setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int p, long i) { (
class ViewTest{ //called in a fragment
setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int p, long i) {
((MainActivity) getActivity()).makeResultsbarVisible();
...
}
});
但我遇到了一个无法修复的错误:
The method getActivity() is undefined for the type new AdapterView.OnItemClickListener(){}
如何在onItemClick()中调用getActivity?谢谢。您只能在
片段
类或扩展它的类中使用getActivity
。如果您的onItemClickListener
处于活动中,请使用main活动。此使用类名。此或定义上下文变量。然后使用Context
变量调用您的makeResultsbarVisible()
像
如果可能的话,发布完整的课程代码。。。您是否在片段中使用?这是一个活动还是片段?它在片段中实例化的类中。您可以发布外部(主)类声明和内部类声明吗?我的意思是你的内部类是静态的吗?你需要在你的问题中添加更多的信息来获得帮助…很好的解决方案!到底是什么给了我MainActivity.this当从MainActivity类中的侦听器调用时,MainActivity的当前实例??
The method getActivity() is undefined for the type new AdapterView.OnItemClickListener(){}
Context c = this;
c.makeResultsbarVisible();