2014-05-20 108 views
-2

这里是我的问题的一个图像中的应用: enter image description here enter image description here键盘推导航栏

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

任何解决方案?

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

谢谢!

+0

没有代码?没有提及这是什么(应用程序,网站等)?没有提到你用来创造这个? – APAD1

回答

0

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

打开您的项目,

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

在该文件中,你cvan找到一个名为

- (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]; 
....... 

[OR]

如果你婉显示状态栏的所有时间,只是想隐藏它当键盘上来,

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

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

并进入下面的代码行,

[[UIApplication sharedApplication] setStatusBarHidden:YES]; 

和,

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

输入下面的代码行,

[[UIApplication sharedApplication] setStatusBarHidden:NO]; 

在某些科尔多瓦版本将只有这样,

- (void)keyboardWillShowOrHide:(NSNotification*)notif 
在这种情况下

写一个条件,以检查是否键盘显示或隐藏,并将上面的代码行放在其中以显示和隐藏状态栏。

希望这是你正在寻找的,如果你满意,请接受答案。 美好的一天!

+0

谢谢!我使用了两个cordova插件(键盘和状态栏),以便在键盘出现时隐藏状态栏。但我宁愿导航栏可以以某种方式修复... –

+0

导航栏的问题?那是什么?请在键盘显示时发布正常屏幕截图和另一个截图。一个也阐述你的问题! – locknies

+0

我已经使用新图片更新了帖子。当键盘出现时,将导航栏向上推而不是固定在顶部。我不知道如何使滚动不影响导航栏。 –

0

我认为这是css问题。 HTML compoentn的高度可能是用“%”指定的。用“px”指定高度或使用position:absolute。

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