Ios 按下锁定按钮的视图控制器方法?
当用户按下锁定按钮时,是否有可用的视图控制器方法被调用?我正在寻找类似于Ios 按下锁定按钮的视图控制器方法?,ios,objective-c,Ios,Objective C,当用户按下锁定按钮时,是否有可用的视图控制器方法被调用?我正在寻找类似于ViewDidEnglish:或ViewWillEnglish:,但具体到按下锁定按钮的情况。当用户锁定手机时,会发布一个名为UIApplicationIdentinterbackgroundNotification的通知。以下是如何聆听它: 在ViewController的viewDidLoad:中: [[NSNotificationCenter defaultCenter] addObserver:self select
ViewDidEnglish:
或ViewWillEnglish:
,但具体到按下锁定按钮的情况。当用户锁定手机时,会发布一个名为UIApplicationIdentinterbackgroundNotification
的通知。以下是如何聆听它:
在ViewController的viewDidLoad:
中:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(screenLocked) name:UIApplicationDidEnterBackgroundNotification object:nil];
然后,定义一个方法(我的方法在上面被称为screenLocked
),并编写您希望在屏幕锁定时执行的代码
-(void)screenLocked{
//do stuff
}
此外,要进行一些必要的清理,请将此方法也添加到ViewController中
-(void)dealloc{
[[NSNotificationCenter defaultCenter] removeObserver:self name:UIApplicationDidEnterBackgroundNotification object:nil];
}
试试这个:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UIApplicationState state = [application applicationState];
if (state == UIApplicationStateInactive) {
NSLog(@"Sent to background by locking screen");
} else if (state == UIApplicationStateBackground) {
NSLog(@"Sent to background by home button/switching to other app");
}
}
电话呼叫保持按钮?你说的“保持按钮”是什么?电话右上角的按钮。我的错误--“锁定”按钮请用“锁定”而不是“保持”来编辑你的问题注意,这是AppDelegate中定义的方法,而不是
UIViewController
的方法。谢谢你的帮助。我特别想寻找一种在视图控制器内部调用的方法。hw731的回答解决了这一问题。