public class MainActivity extends Activity {
private static boolean isQuit = false;
Timer timer = new Timer();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void toast1(View v) {
// Toast.makeText(MainActivity.this, "我是一个普通的吐司",
// Toast.LENGTH_LONG).show();
Toast toast = Toast.makeText(MainActivity.this, "我是一个普通的吐司",
Toast.LENGTH_LONG);
// 设置Toast显示的位置
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
}
public void toast2(View v) {
// 1, 实例化Toast
Toast toast = new Toast(MainActivity.this);
// 2, 设置Toast的内容
TextView tv = new TextView(MainActivity.this);
tv.setTextColor(Color.RED);
tv.setText("我是一个自定义的Toast");
toast.setView(tv);
// 3, 设置Toast显示的位置
toast.setGravity(Gravity.CENTER, 0, 0);
// 4, 设置持续的时间
toast.setDuration(Toast.LENGTH_LONG);
// 5, 显示Toast
toast.show();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 1, 判断点击的是否为返回键
if (keyCode == KeyEvent.KEYCODE_BACK) {//起初设置为isQuit为false,第一次点击后改变为true,因此第二次点击进入else,两秒内未点击仍为false
if (isQuit == false) {
isQuit = true;
Toast.makeText(MainActivity.this, "再按一次返回键退出应用程序",
Toast.LENGTH_SHORT).show();
// 定时器
timer.schedule(new TimerTask() {
@Override
public void run() {
isQuit = false;
}
}, 2000);
} else {
System.exit(0);// 退出当前应用程序
}
}
return false;
}
}
自定义Toast及定时器实现点击两次退出
最新推荐文章于 2023-06-29 00:40:27 发布