我有一个滑块,可以拉上来,然后它会显示一个地图。我可以上下移动滑块来隐藏或显示地图。当地图在前面时,我可以处理地图上的触摸事件。每次我触摸,一个AsyncTask就会被激活,它会下载一些数据并生成一个显示数据的Toast。虽然我在触摸事件上启动任务,但直到我关闭滑块时,才会显示toast。当滑块关闭,地图不再显示时,吐司就会出现。

什么好主意吗?

我们开始任务吧

编辑:

public boolean onTouchEvent(MotionEvent event, MapView mapView){ 
    if (event.getAction() == 1) {
        new TestTask(this).execute();
        return true;            
    }else{
        return false;
    }
 }

并在onPostExecute中敬酒

Toast.makeText(app.getBaseContext(),(String)data.result, 
                Toast.LENGTH_SHORT).show();

在new TestTask(this)中,这是对MapOverlay的引用,而不是对MapActivity的引用,所以这就是问题所在。


当前回答

如果是碎片,

Toast.makeText(getActivity(), "this is my Toast message!!! =)",
                   Toast.LENGTH_LONG).show();

其他回答

有两种方法。

或者使用内置的Toast消息

//Toast shown for  short period of time 
Toast.makeText(getApplicationContext(), "Toast Message", Toast.LENGTH_SHORT).show();

//Toast shown for long period of time
Toast.makeText(getApplicationContext(), "Toast Message", Toast.LENGTH_LONG).show();

或者通过提供自定义布局文件来定制一个

Toast myToast = new Toast(getApplicationContext());
myToast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
myToast.setDuration(Toast.LENGTH_LONG);
myToast.setView(myLayout);
myToast.show();

必读:Android Toast示例

语法

Toast.makeText(context, text, duration);

您可以使用getApplicationContext()或getActivity()或MainActivity。(如果活动名称是MainActivity)

Toast.makeText(getApplicationContext(),"Hi I am toast",Toast.LENGTH_LONG).show();

or

Toast.makeText(MainActivity.this,"Hi I am Toast", Toast.LENGTH_LONG).show();

如果你想在你的活动中写一段简单的祝酒词: Toast.makeText (getApplicationContext(),“你好”,Toast.LENGTH_SHORT),告诉();

1.在Toast中显示TextView:——

TextView tv =新的TextView(这); tv.setText(“你好!”); tv.setTextSize (30); tv.setTextColor (Color.RED); tv.setBackgroundColor (Color.YELLOW);

2.显示图像为吐司:-

ImageView iv =新的ImageView(this); iv.setImageResource (R.drawable.blonde); 吐司=新的吐司(这个); t.setView (iv); t.setDuration (Toast.LENGTH_LONG); t.show ();

3.显示布局为吐司:——

LayoutInflater li = getLayoutInflater(); View View = li. expand (r.b ayout.my_toast_layout,null,false); 吐司=新的吐司(这个); t.setView(查看); t.setDuration (Toast.LENGTH_LONG); t.show ();

**如果你想在Async中写吐司,那么: 私人活动活动; private android.content.Context 这一点。活动=活动; 这一点。上下文=上下文; 吐司。makeText(context, "Hello", Toast.LENGTH_SHORT).show();

简单的方法!(要在主活动中显示,请将第一个参数替换为其他活动)

Button.setOnClickListener(new View.OnClickListener(){
    @Override
    public void onClick(View v){
        Toast.makeText(MainActivity.this,"Toast Message",Toast.LENGTH_SHORT).show();
    }
}

如果是碎片,

Toast.makeText(getActivity(), "this is my Toast message!!! =)",
                   Toast.LENGTH_LONG).show();