java app开发错误不是封闭类

时间:2014-08-12 22:14:15

标签: java android

嘿,这是我第一次使用堆栈溢出,我试图在另一个文件中调用一个类(MainActivity调用FetchWeatherTask)我得到的错误不是封闭类,这是代码抛出错误

 @Override
    public boolean onOptionsItemSelected (MenuItem item){
        int id = item.getItemId();
        if (id == R.id.action_refresh) {
            ForecastFragment.FetchWeatherTask weatherTask = new ForecastFragment.FetchWeatherTask();
            weatherTask.execute();
            return true;
        }

我要尝试一些事情,但我遇到了完整的错误

' com.alpha(APPNAME).ForecastFragment'不是封闭的类

编辑:

我试图在另一个文件中调用一个类来获取天气数据

2 个答案:

答案 0 :(得分:1)

ForecastFragment.FetchWeatherTask weatherTask = new ForecastFragment.FetchWeatherTask();

这行代码告诉Java编译器在FetchWeatherTask类中查找ForecastFragment类。由于编译器在那里找不到FetchWeatherTask,它会抱怨。我怀疑您已将FetchWeatherTask声明为顶级类,因此您只需删除ForecastFragment前缀(以及点)。

答案 1 :(得分:0)

您可以使用处理程序执行在后台运行的任务。还尝试通过扩展AsyncTask或手动启动新线程来运行Async任务。