你也可以繼承的UIApplication:
- 創建UIApplication的子類
- 覆蓋的
-(BOOL)sendAction:(SEL)action to:(id)target from:(id)sender forEvent:(UIEvent *)event
方法,記得調用超級實施
- 把一個
NSLog
或其他診斷代碼執行
內
實施例,這將打印日誌每次按下一個的UIButton時間:
-(BOOL)sendAction:(SEL)action to:(id)target from:(id)sender forEvent:(UIEvent *)event
{
if ([sender isKindOfClass:[UIButton class]])
{
NSLog(@"Action: %@ - %@ - %@", NSStringFromSelector(action), target, sender);
}
return [super sendAction:action to:target from:sender forEvent:event];
}
2013-07-08 14:46:18.270 UIApplicationSubclass[94764:c07] Action: anAction: - <ViewController: 0x76790a0> - <UIRoundedRectButton: 0x767b9b0; frame = (103 66; 73 44); opaque = NO; autoresize = TM+BM; layer = <CALayer: 0x767bad0>>
2013-07-08 14:46:27.378 UIApplicationSubclass[94764:c07] Action: anAction: - <ViewController: 0x76790a0> - <UIRoundedRectButton: 0x767b9b0; frame = (103 66; 73 44); opaque = NO; autoresize = TM+BM; layer = <CALayer: 0x767bad0>>
此外,子類UIApplication的,你必須改變這樣的main.m文件(在我的情況下的UIApplication子類被命名爲FLApplication,看UIApplicationMain函數的第三個參數和FLApplication.h進口)
#import "AppDelegate.h"
#import "FLApplication.h"
int main(int argc, char *argv[])
{
@autoreleasepool {
return UIApplicationMain(argc, argv, NSStringFromClass([FLApplication class]), NSStringFromClass([AppDelegate class]));
}
}
這很簡單,如果你繼承UIApplication,看看我的答案;-) – LombaX