0

我设法通过AsyncTask成功处理了JSON 对象的HttpPost。众所周知,整个编码都在doInBackground()方法中,然后是onPostExecute()任何需要在 UI 中显示的内容。因此,我想显示一个带有 OK 按钮的对话框,表明该过程已成功完成。

但是我在调​​试/运行时遇到了那个臭名昭著的“未找到源”运行时错误。这是我所犯错误的 scrshot 的链接: Dialog.class missing!

代码是这样的:

 protected void onPostExecute(JSONObject result)
    {
        if (statusCode==HttpStatus.SC_CREATED) 
        {
            AlertDialog.Builder msgBox = new AlertDialog.Builder(getBaseContext());
            msgBox.setTitle("User registration");
            msgBox.setIcon(R.drawable.confirmed_icon);
            msgBox.setMessage("Registration succesfully completed!");
            msgBox.setPositiveButton("OK", new OnClickListener() 
            {                   
                public void onClick(DialogInterface dialog, int which)
                {
                    dialog.dismiss();
                    /*Intent intent = new Intent(getApplicationContext(), ScardsMainActivity.class);
                    startActivity(intent);*/
                }
            });
            msgBox.create();
            msgBox.show();
        }//if statement ends.       
    }//onPostExecute ends.

我知道这是多余的,可能是一个愚蠢的问题,并且在 SO 中被问了好几次,但我是 Android 新手,因此我需要更多帮助和有关遇到错误等问题的信息。

4

2 回答 2

1

如果您在从崩溃中调试堆栈跟踪时遇到此问题,则需要附加 Android 源代码才能查看内置类的代码,例如Dialog.java. 网上有一些教程显示了正确的步骤,例如这个

编辑

我提供的链接中对 Android 源代码的引用已经过时,但是您可以通过从Github 上的platform_frameworks_base存储库克隆来获取相关的 Java 类。

于 2012-11-08T20:04:04.420 回答
0

这并不是真正的错误,仅表明调试器找不到 Dialog 类的源。如果您正常运行代码,则不应发生这种情况。

于 2012-11-08T20:01:53.690 回答