如果我擴展了Activity並在我的基類中實現了一個事件處理程序(對不起,如果這不是正確的OOP術語),我如何確保我的事件處理程序總是從類延長我的。確保在擴展活動後調用事件偵聽器
public class MyActivity extends Activity{
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//Stuff that I need to do.
}
}//MyActivity class
public class MainActivity extends MyActivity{
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
}
}//MainActivity class
意圖是,MyActivity將最終在其他用戶將使用的代碼庫中。 我的班級和擴展班級的活動實例都有單獨的有效用途onActivityResult
。我顯然不能讓onActivityResult
決賽來阻止人們超越它。
現在,如果用戶忘記添加該超級語句,我的代碼不會運行。有沒有辦法強制擴展MyActivity的類的實例在父類中由我定義的方法重疊的方法中運行超類。
這個問題可能會有幫助:http://stackoverflow.com/questions/4217013/how-to-force-derived-class-to-call-super-method -like-android-does – fiddler 2012-07-12 15:41:20