开发者

Cannot figure out the context when launching an Intent from within a thread completion method

I am trying to launch a new intent after I have loaded data. I am using a handler that calls a method when the thread is complete and then in this method I am trying to launch a new Intent but my app is crashing every time. I have narrowed it down to the Context variable in the Intent constructor. Here is my code:

/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        pDialog = new ProgressDialog(this);

        pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
        pDialog.setMessage("Loading...");
        pDialog.setCancelable(false);
        pDialog.show();

        mHandler = new Handler();
        checkUpdate.start();
    }

    private Thread checkUpdate = new Thread()
    {
     public void run()
     {
      try
      {
                        //Do some stuff

          mHandler.post(showUpdate);
      }
      catch(Exception e)
      {
       //Error case
      }
     }
    };

    private final Context context = this;        

    private Runnable showUpdate = new Runnable()
    {
     public void run()
     {
      //Do post process

      pDialog.dismiss();

                    //This is the line it crashes on
      Intent intent = new Intent(context, com.example.example1.TestListActivity.class);
     开发者_JAVA技巧    startActivityForResult(intent, 0);
     }
    };


I figured it out. Turns out I forgot to include the new Activity in the manifest file.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜