自从我给同事介绍了锤子之后,他就从一个“魅粉”转变为了一个锤粉,不论是坚果还是T2他都买了。另外在使用手机的时候,总是不断地向我们“吐槽”锤子的精致。前段时间他发现在使用一些app时候,有些退出Toast提示与我们自己做的不同,就一直想把我们自己的App也改为那样,但却不知怎么搞。今天我闲来无事,就在网上Google了一下,发现了http://bbs.smartisan.com/thread-77953-1-1.html 一个帖子,于是就做了下实验,把Tst.show(this, "再按一次离开我会种", EXIT_APP_COUTDOWN_MS);
中的this
改为了getApplicationContext()
效果就出来了:
下面贴出代码:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && ! mExitAppPrepared) {
Tst.show(getApplicationContext(), "再按一次离开我会种", EXIT_APP_COUTDOWN_MS);//this ->getApplicationContext()
mExitAppPrepared = true;
mExitAppTimeCountdown = new TimeCountdown(EXIT_APP_COUTDOWN_MS, EXIT_APP_COUTDOWN_MS) {
@Override
public void countdownListener(int currentValue, boolean isEnd) {
if (isEnd) {
L.d(TAG, "countdownListener(END)");
mExitAppPrepared = false;
}
}
};
return false;
}
return super.onKeyDown(keyCode, event);
}
最后贴出stackoverflow上的一个关于不同Context的区别的回答:http://stackoverflow.com/questions/10347184/difference-and-when-to-use-getapplication-getapplicationcontext-getbasecon
我把效果展示给他看,他又惊赞不已了...
网友评论