【问题标题】:Android: where in code super class must be callingAndroid:必须在代码中调用超类的位置
【发布时间】:2015-03-28 08:47:25
【问题描述】:
什么是对的?
@Override
protected void onPause() {
// myCode
super.onPause();
}
或
@Override
protected void onPause() {
super.onPause();
// myCode
}
【问题讨论】:
标签:
java
android
superclass
【解决方案1】:
这完全取决于您是希望代码在超级实现之前还是之后运行。没有对错之分。
看这两个例子:
// prepend instructions to onPause
@Override
protected void onPause() {
Log.debug("About to pause application...");
super.onPause();
}
对
// append instructions to onPause
@Override
protected void onPause() {
super.onPause();
Log.debug("Just paused the application...");
}
然而,在onPause 的特定情况下,您应该始终首先调用super.onPause。见Pausing and Resuming an Activity。