-1

我正在使用一项AsyncTask任务从 Web 服务器加载响应。根据响应是什么,我想启动一个新的 Activity 或显示一条错误消息。现在我正试图在类的onPostExecute方法中做到这一点AsyncTask。当我尝试创建 Intent 时,我得到一个Constructor is undefined错误。

这是我的代码:

protected void onPostExecute(String result) {  
      // code thate xcicutes after thread
      if ( result.contains("OK"))
        {
            PreSave();

            Intent I;

            if (ChatOrGame==1)
               i = new Intent(cGlobals.mParent );
            else
                i = new Intent(cGlobals.mParent);

            startActivity(i);       
        }
        else
        {
            if (bInternetError==false)
            {
            new AlertDialog.Builder( cGlobals.mParent)
            .setTitle("Log In Error")
            .setMessage( "User name or password" )
            .setNeutralButton("close",new DialogInterface.OnClickListener()
            {
                public void onClick(DialogInterface dlg, int i)
                {

                }} ).show();            

            }
        }
  }
4

1 回答 1

2

您需要将Activity要开始的内容添加到您的Intent

i = new Intent(cGlobals.mParent, NextActivity.class);

Intent没有 aConstructor只接受 aContext所以你得到这个错误。您需要添加Activity开始,以便Intent知道如何处理这些信息。这当然是假设那cGlobals.mParent是 a context,我相信这是你在其他地方使用它的方式以及你给它的名字。你的意思Intent IIntent i我认为这是一个错字,或者它甚至不应该编译

注意正如@Trinimon 在评论中所说,请确保Activity您开始的任何内容都在Intent中定义,manifest否则您将遇到更多问题

于 2013-04-25T14:23:53.037 回答