gpt4 book ai didi

ios - 从 presentMoviePlayerViewControllerAnimated 解雇后,UITextfield 不显示键盘

转载 作者:行者123 更新时间:2023-11-28 22:29:02 24 4
gpt4 key购买 nike

我正在使用一个应用程序,该应用程序需要在单击视频文件时打开“MPMoviePlayerViewController”。

我们的应用程序中有一个 tabbarController,它有四个标签的四个导航 Controller 。

我的应用仅支持纵向,但视频应同时支持横向和纵向。所以,我创建了“MPMoviePlayerViewController”的子类。

那个类的代码..

@interface MyMovieViewController : MPMoviePlayerViewController
@end

@implementation MyMovieViewController
-(void)viewDidLoad{
[self setWantsFullScreenLayout:NO];
}

-(void)viewWillDisappear:(BOOL)animated{
[self resignFirstResponder];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
return YES;
}
-(BOOL)shouldAutorotate{
return YES;
}
@end

在第一个选项卡中,我显示画廊。有打开视频文件的代码。

UIGraphicsBeginImageContext(CGSizeMake(1,1));
MPMoviePlayerViewController * vc = [[MyMovieViewController alloc] initWithContentURL:[[[elcAsset asset] valueForProperty:ALAssetPropertyURLs] valueForKey:[[[[elcAsset asset] valueForProperty:ALAssetPropertyURLs] allKeys] objectAtIndex:0]]];
UIGraphicsEndImageContext();
// Remove the movie player view controller from the "playback did finish" notification observers
[[NSNotificationCenter defaultCenter] removeObserver:vc
name:MPMoviePlayerPlaybackDidFinishNotification
object:vc.moviePlayer];

// Register this class as an observer instead
[[NSNotificationCenter defaultCenter]
addObserver: self
selector: @selector(doneButtonClick:)
name: MPMoviePlayerPlaybackDidFinishNotification
object: vc.moviePlayer];

[self presentMoviePlayerViewControllerAnimated:vc];
[vc.moviePlayer prepareToPlay];
[vc.moviePlayer play];

视频是工作文件。它还支持两个方向。但是当我切换到另一个选项卡时,单击它时没有文本字段显示键盘。

请帮忙。提前致谢。

最佳答案

我已经解决了这个问题。实际上,MPMoviePlayerViewController 支持两种方向,而我的应用仅支持纵向。当我关闭 MPMoviePlayerViewController 时,它的父 View 认为它是横向模式。因此,它显示横向键盘,其 CGPoint 低于屏幕。这就是为什么我看不到键盘的原因。

我已将以下代码写入我的 CustomNavigationController。

- (BOOL)shouldAutorotate
{
return [self.visibleViewController shouldAutorotate];
}

- (NSUInteger)supportedInterfaceOrientations
{
return [self.visibleViewController supportedInterfaceOrientations];
}

现在,它工作正常。

关于ios - 从 presentMoviePlayerViewControllerAnimated 解雇后,UITextfield 不显示键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18019233/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com