-2

这是我在应用程序中的问题的图像: 在此处输入图像描述 在此处输入图像描述

这是我的代码: http: //pastebin.com/JckpYKYz

有什么解决办法吗?

当键盘出现在该页面上时,我想隐藏状态栏。

谢谢!

4

2 回答 2

0

我认为这是css问题。HTML 组件的高度可能用“%”指定。使用“px”指定高度或使用位置:绝对。

显示软键盘会影响 html 元素的高度。

于 2014-05-29T06:57:57.720 回答
0

默认情况下,在cordova 中会显示状态栏。您可以通过在您的科尔多瓦项目中添加一些代码以编程方式隐藏状态。您可以通过更改一些本机代码轻松管理您的情况。

打开你的项目,

collapse "CordovaLib.xcodeproj" >> Classes >> Cleaver >> CDVViewController.m

在该文件中,您可以找到一个名为

- (void)viewDidLoad

在那输入下面的代码行

[[UIApplication sharedApplication] setStatusBarHidden:YES];

我的长这样

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSURL* appURL = nil;
    NSString* loadErr = nil;
    [[UIApplication sharedApplication] setStatusBarHidden:YES];
    [[webView scrollView] setBounces: NO];
    if ([self.startPage rangeOfString:@"://"].location != NSNotFound) {
        appURL = [NSURL URLWithString:self.startPage];
.......

[或者]

如果您想一直显示状态栏并且只想在键盘出现时将其隐藏,

然后检查在同一个文件中调用的另一个函数,

- (void) keyboardWillShow:(NSNotification *)note {

并输入以下代码行,

[[UIApplication sharedApplication] setStatusBarHidden:YES];

并且在,

- (void) keyboardWillHide:(NSNotification *)note {

输入下面的代码行,

[[UIApplication sharedApplication] setStatusBarHidden:NO];

在某些科尔多瓦版本中,只有这个,

- (void)keyboardWillShowOrHide:(NSNotification*)notif

在这种情况下,编写一个条件来检查键盘是显示还是隐藏,并将上面的代码行放入其中以显示和隐藏状态栏。

希望这是您正在寻找的,如果您满意,请接受答案。再会!

于 2014-05-21T05:23:36.013 回答