Apache cordova在android上哪里是滚动条?

时间:2014-02-01 14:02:38

标签: android scrollbar cordova-3

我尝试使用cordova构建一个简单的应用程序,其目标是android

我只想拥有一个可滚动的div但是

  • 如果内容小于div的高度,则滚动条始终可见
  • 如果内容大于div的高度,滚动条永远不会出现,即使我滚动:滚动是可能的但没有滚动条位置指示

我的布局很简单:

<body>
    <div id='views'>
        <div class='view'>
            Lorem ipsum ...
        </div>
    </div>
</body>

Css也很简单:

#views {
    position : absolute;
    top:0; right:0; bottom:0; left:0;
}

.view {
    position : absolute;
    top:0; right:0; bottom:0; left:0;
    overflow-x                 : hidden;
    overflow-y                 : scroll;
    -webkit-overflow-scrolling : touch;
    overflow-scrolling         : touch;
}

然后我使用命令:cordova run android

注意:

  • 我使用cordova版本3.3.1-0.3.1
  • 测试Nexus 7更新(android kitkat)
  • 使用上一个Android API:19

感谢您的帮助

编辑:我只是尝试使用iOs模拟器(iOS 6.1),当我滚动时滚动条是可见的...

[更新] 谢谢你的帮助。 这是在android

上有滚动条的正确代码

[更新2] 这不完全没问题,尝试这个,整个窗口滚动,而不仅仅是.view内容

HTML

<body>
    <div id='views'>
        <div class='view'>
            Lorem ipsum ...
        </div>
    </div>
    <div id='menu-bt'></div>
</body>

CSS

.view {
    position:absolute;
    top:0; right:0; bottom:0; left:0;
    overflow:visible;
    -webkit-overflow-scrolling:touch;
    overflow-scrolling:touch;
}

#menu-bt {
    position:absolute;
    right:40px; bottom:40px;
    width:50px; height:50px;
    background-color:green;
}

然后,在文件/plate/android/src/io/cordova/myProject/MyProject.java中添加此行

super.appView.setVerticalScrollBarEnabled(true);

2 个答案:

答案 0 :(得分:2)

在此处进行测试并将溢出更改为visible它可以正常工作。

此外,请确保通过添加以下行启用Android活动文件中的滚动条(如指向here):

super.appView.setVerticalScrollBarEnabled(true);

答案 1 :(得分:0)

转到:位于的 SystemWebViewEngine.java yourAppName \平台\机器人\ CordovaLib \ SRC \组织\阿帕奇\科尔多瓦\ SystemWebViewEngine.java

设置webView.setVerticalScrollBarEnabled(true);