我启用一个新的线程下载,下载完需要给用户一个提示,但这时用户可能已经进入其它activity中,不能确定当前到底是哪个activity,也就无法context参数给Toast,
用下面的方式也不行
Toast.makeText(getApplicationContext(),  "下载成功",   Toast.LENGTH_SHORT).show();
因为下载类是在另一个包中的一个单独的class中求高手指点~~

解决方案 »

  1.   

    我也没做过这种啊,但是一般情况下你想下我们玩游戏也好,做别的也好 来短信的时候总会弹出对话框啊。你可以试下系统事件。另一方面也可以判断当期啊男的界面是什么,然后传递给他不同的context。
    唉,给不了你更多的帮助,我也是菜鸟
      

  2.   

    Toast 本身就是这个特性 你说的下载提示 我做过 就是个普通的Toast 到其它Toast 或者是在Home 界面 都是有提示的 
    你测试 不可以吗?
      

  3.   

    Toast 在调试状态下,有可能会显示不出来,会不会是这个原因?
      

  4.   

    线程中不能调用界面中的东西的,用handle实现比较好
      

  5.   

    定义一个全局的hande 每到一个界面 就给这个hande复制
    你的Toast 再调用这个hande 就行了
      

  6.   

    getApplicationContext()  试下这个
      

  7.   


        private void showToast(final int stringId) {
            runOnUiThread(new Runnable() {            public void run() {
                    Toast.makeText(Activity.this, Activity.this.getResources().getString(stringId),
                            Toast.LENGTH_SHORT).show();
                }
            });
        }
      

  8.   

    干吗要用toast ,你用个dilog 或者用intent跳转一个页面不行吗?
      

  9.   

    Toast相当于Notification,本身就是全局的,想不全局都不行。
      

  10.   

    但是在新线程show Toast是不可以的,只能在UI线程。
      

  11.   

      下载完成发一个广播, 然后定义一个接受者,接收到该广播,再接收者中启动你先前的Activity 最后吐司
      

  12.   

    你估计和我犯了一个错,没写show()