我知道一个Cordova应用程序需要全屏显示应用程序。有没有办法制作混合用户界面,我的意思是用户界面的一些元素来自本机代码,以至于webview没有全屏显示,或者当本机UI元素放置在视图堆栈中的webview顶部时?
答案 0 :(得分:3)
不,它不必是完整大小,您可以将cordova webview嵌入到本机项目中,并使其达到您想要的大小。您可以将原生部分与cordova webview混合。
查看有关嵌入webview的文档 http://docs.phonegap.com/en/4.0.0/guide_hybrid_webviews_index.md.html#Embedding%20WebViews
还有另一种方法,如果您希望应用程序像普通的cordova项目一样,您可以使用CLI添加插件,您可以使用CLI创建cordova项目并编辑本机代码以调整大小查看或更改其他内容。这里有一个关于iOS的两部分教程:
http://devgirl.org/2014/07/22/mixing-cordova-phonegap-components-with-nativ/
http://devgirl.org/2014/07/24/mixing-cordovaphonegap-components-with-native-ios-part-2/
答案 1 :(得分:1)
Exos:
<preference name="Fullscreen" value="true" />
而且,如果你想隐藏导航栏,你需要在你的 CordovaApp.java (res)示例中使用Java代码:
import android.view.View;
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
View decorView = getWindow().getDecorView();
if(hasFocus) {
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
}
在 AndroidManifest.xml
中android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"