Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:点击按钮时,在自定义时间后显示toast消息_Android_Xml_Toast - Fatal编程技术网

Android:点击按钮时,在自定义时间后显示toast消息

Android:点击按钮时,在自定义时间后显示toast消息,android,xml,toast,Android,Xml,Toast,我想在点击按钮30秒后添加一个祝酒词。你能帮我一下吗。你可以使用处理程序和postDelayed()。您可以找到文档 例如: new Handler().postDelayed(new Runnable()){ @凌驾 公开募捐{ //把你的吐司放在这里 } }, 30 * 1000); 您必须注意您的处理程序运行在哪个线程上。如果要进行UI修改(如Toast),必须将处理程序附加到UI线程上。可以使用处理程序的postDelayed()方法……传递线程和特定时间,之后执行线程,如下所示 pr

我想在点击按钮30秒后添加一个祝酒词。你能帮我一下吗。

你可以使用
处理程序
postDelayed()
。您可以找到文档

例如:

new Handler().postDelayed(new Runnable()){
@凌驾
公开募捐{
//把你的吐司放在这里
}
}, 30 * 1000);

您必须注意您的
处理程序运行在哪个线程上。如果要进行UI修改(如
Toast
),必须将
处理程序
附加到UI线程上。

可以使用
处理程序
postDelayed()
方法……传递
线程
和特定时间,之后执行
线程
,如下所示

private Handler mTimerHandler = new Handler();

private Runnable mTimerExecutor = new Runnable() {

    @Override
    public void run() {
        Toast.makeText(Activity.this, "Button Clicked", Toast.LENGTH_LONG).show().
    }
};
然后在
onClick()
方法中按如下方式调用

public void onClick(View view) {

    mTimerHandler.postDelayed(mTimerExecutor, 30000);

}

您可以在单击按钮后启动计时器30秒,然后在onFinish()方法中显示toast消息

公共类测试活动扩展活动{
私人计算机;
专用按钮mBtn;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
//TODO自动生成的方法存根
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
mBtn=(按钮)findviewbyd(R.id.btn);
mBtn.setOnClickListener(新的OnClickListener(){
@凌驾
公共void onClick(视图arg0){
//TODO自动生成的方法存根
mCounter=新的MyCounter(40000,10000);
mCounter.start();
}
});
}
私有类MyCounter扩展了倒计时{
公共MyCounter(长百万未来,长倒计时间隔){
超级(毫秒未来,倒计时间隔);
//TODO自动生成的构造函数存根
}
@凌驾
公共无效onFinish(){
//TODO自动生成的方法存根
Toast.makeText(getApplicationContext(),“在此处显示文本”,Toast.LENGTH\u SHORT.show();
}
@凌驾
公共void onTick(长毫秒未完成){
//TODO自动生成的方法存根
Log.i(“在刻度上>>>>>”,毫秒直至完成+“>>>>>”;
}
}
}
new Handler().postDelayed(new Runnable()){
@凌驾
公开募捐{
//祝酒词
}
}, 500);

您可以在按钮单击事件上执行此操作

button.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
Handler=newhandler();
handler.postDelayed(新的Runnable(){
@凌驾
公开募捐{
//TODO自动生成的方法存根
Toast.makeText(Activity.this,“单击按钮”,Toast.LENGTH_LONG.show();
}, 3000);
}
});
类似的内容:

按钮按钮=新按钮(此按钮);
setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
Handler=newhandler();
handler.postDelayed(新的Runnable(){
@凌驾
公开募捐{
Toast.makeText(上下文,“Hello!”,Toast.LENGTH_LONG.show();
}
}, 30000);
}
});