草庐IT

UIViewController_keyboard

全部标签

android - 如何在 Android 中捕获 "virtual keyboard show/hide"事件?

我想根据是否显示虚拟键盘来更改布局。我搜索了API和各种博客,但似乎找不到任何有用的东西。有可能吗?谢谢! 最佳答案 2020年更新这现在是可能的:在Android11上,您可以这样做view.setWindowInsetsAnimationCallback(object:WindowInsetsAnimation.Callback{overridefunonEnd(animation:WindowInsetsAnimation){super.onEnd(animation)valshowingKeyboard=view.rootW

javascript - iPad 网络应用程序 : Detect Virtual Keyboard Using JavaScript in Safari?

我正在为iPad编写一个网络应用程序(不是普通的AppStore应用程序-它是使用HTML、CSS和JavaScript编写的)。由于键盘占据了屏幕的很大一部分,因此在显示键盘时更改应用程序的布局以适应剩余空间是有意义的。但是,我发现无法检测键盘何时或是否显示。我的第一个想法是假设当文本字段具有焦点时键盘是可见的。但是,当将外部键盘连接到iPad时,当文本字段获得焦点时,虚拟键盘不会显示。在我的实验中,键盘也不会影响任何DOM元素的高度或滚动高度,并且我没有发现表明键盘是否可见的专有事件或属性。 最佳答案 我找到了一个可行的解决方案

ios - 在从 UIViewController 调用的非保留完成中引用 self 时,weakSelf/strongSelf 舞蹈真的有必要吗?

假设我在UIViewController子类中有以下方法:-(void)makeAsyncNetworkCall{[self.networkServiceperformAsyncNetworkCallWithCompletion:^{dispatch_async(dispatch_get_main_queue(),^{[self.activityIndicatorViewstopAnimating];}});}];}我知道block内对self的引用会导致UIViewController实例被block保留。只要performAsyncNetworkCallWithCompletion

ios - UIViewController 的 prefersStatusBarHidden 不起作用

我正在尝试隐藏我的一个ViewController的状态栏(当模态显示时)。当我展示ViewController时,状态栏将被隐藏,然后在关闭时返回。我已将以下代码添加到呈现的ViewController中-(BOOL)prefersStatusBarHidden{returnYES;}我还将Info.plist文件中的键设置为以下内容:UIViewControllerBasedStatusBarAppearance据我了解,这应该是完成这项工作所需的全部内容。我还使用自定义动画Controller进行呈现,它符合UIViewControllerAnimatedTransitionin

objective-c - 如何在嵌入 UIViewController 的 UITableView 中直观地创建和使用静态单元格

我正在使用XCode4.2,并使用Storyboards构建了我的UI。我需要创建一个在UITableView上方和下方具有内容的View,我可以通过使用UIViewController来实现这一点。UITableViewController不允许您在表格上方或下方添加内容。您可以使用表格页眉/页脚,但这不适用于我想要实现的目标。我现在有一个UIViewController,其中嵌入了一个UITableView。我可以相应地调整UITableView的高度和宽度,从而为我提供我正在寻找的UI布局。我可以自定义UITableView中的静态单元格,但是当我尝试构建时出现以下错误:Ille

iphone - 检查 UIViewController 是否即将从导航堆栈中弹出?

我需要知道我的ViewController何时将从导航堆栈中弹出,以便执行操作。我不能使用-viewWillDisappear,因为当ViewController出于任何原因移出屏幕时会调用它(比如将新的ViewController推到顶部)。我特别需要知道Controller什么时候会自己弹出。任何想法都会很棒,在此先感谢。 最佳答案 在所呈现的VC中覆盖viewWillDisappear方法,然后检查覆盖中的isMovingFromParentViewController标志并执行特定逻辑。就我而言,我隐藏了导航Controll

iphone - 如何在 UIViewController 中使用 applicationDidBecomeActive?

我想在应用程序变为事件或成为前台时重新加载UIViewController中的数据。我知道在AppDelegate类中调用了applicationDidBecomeActive。但是我必须有一个全局变量,以便UIViewController像这样的代码在AppDelegate类中重新加载其数据:inAppDelegate.m//globalvariableUIViewController*viewController1;UIViewController*viewController2;-(void)applicationDidBecomeActive:(UIApplication*)a

ios - 为什么 UIViewController 在 UINavigationBar 下扩展,而 UITableViewController 没有?

我有UITabbarController和UINavigationController。我有一个UIView的子类,我在navController中指定为UIViewController的view。这是很标准的东西,对吧?我就是这样做的_productCategoryView=[[ProductCategoryViewalloc]initWithFrame:self.view.frame];self.view=_productCategoryView;这个view有一个UITableView作为subView_productCategoryTableView=[[UITableView

objective-c - 如何为多个子类使用单个 Storyboard uiviewcontroller

假设我有一个包含UINavigationController作为初始ViewController的Storyboard。它的RootViewController是UITableViewController的子类,即BasicViewController。它有IBAction连接到导航栏的右侧导航按钮从那里我想使用Storyboard作为其他View的模板,而不必创建额外的Storyboard。假设这些View将具有完全相同的界面,但具有类SpecificViewController1和SpecificViewController2的RootViewController,它们是Basic

objective-c - IOS:使用 iPad KeyBoard 的回车键操作

我有两个文本字段,在第一个文本字段中我写“Hello”,当我在iPad键盘上按Enter时,我希望在第二个文本字段中出现“World”;如何使用enter在我的应用程序中创建操作? 最佳答案 您通常会将ViewController指定为文本字段的委托(delegate),然后实现textFieldShouldReturn:方法,例如:-(BOOL)textFieldShouldReturn:(UITextField*)textField{otherTextField.text=@"World"returnYES;}